【发布时间】:2013-06-21 20:24:42
【问题描述】:
我正在尝试将我的项目从一台带有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
其中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.
我完全不知道是什么原因造成的。可能是什么问题?
编辑:
当我手动添加这样的名称时:
HEADERS += Dir/f.h \
qmake 不抱怨。
【问题讨论】:
-
我不明白你为什么不明白。 =)。如果 f.h 在文件夹 Dir 中,那么您需要添加该文件的完整路径。这就是 HEADERS += Dir/f.h 起作用的原因。这有意义吗?
-
@Huytard 但我以前不需要这样做。我只需添加目录:DEPENDPATH += $$PWD/Dir/ 然后我不需要编写完整路径。为什么这突然一个问题让我很生气。