我正试图将我的项目从一台计算机qt4带到另一台新安装的地方qt5,我遇到了一个非常奇怪的问题.
qmake突然找不到我的任何源文件或头文件.
这是一个极简主义的例子:
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = untitled
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
INCLUDEPATH += $$PWD/Dir/
DEPENDPATH += $$PWD/Dir/
HEADERS += mainwindow.h \
f.h \
FORMS += mainwindow.ui
Run Code Online (Sandbox Code Playgroud)
凡Dir/f.h存在于同一目录中untitled.pro.我从qmake得到这个输出:
05:18:45: Starting: "/opt/QtSDK/5.0.2/gcc/bin/qmake"
/home/martin/Projects/untitled/untitled.pro
-r -spec linux-g++ CONFIG+=debug CONFIG+=declarative_debug CONFIG+=qml_debug
WARNING: Failure to find: f.h
05:18:45: The process "/opt/QtSDK/5.0.2/gcc/bin/qmake" exited normally.
Run Code Online (Sandbox Code Playgroud)
我完全不知道造成这种情况的原因.可能是什么问题呢?
编辑:
当我手动添加这样的名称时:
HEADERS += Dir/f.h \
Run Code Online (Sandbox Code Playgroud)
qmake 不抱怨
当我在VP文件中包含VPATH时,同样的问题就解决了
例如:VPATH + = ../../libraries/ INCLUDE + = ../../libraries/
另外,对于qt 5,我们不需要在pro文件中包含DEPENDPATH