在命令行上编译项目时,make无法找到Qt标头

时间:2012-01-06 13:44:25

标签: qt qt-creator

我正在尝试在命令行上编译Qt Creator项目。这就是我所做的。

$ qmake
$ make
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DALLOWSYNCING -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -o main.o main.cpp
In file included from ./model/videostream.h:4:0,
                 from ./model/videostreamersession.h:4,
                 from view/videoplayerwindow.h:4,
                 from main.cpp:3:
./model/videoframe.h:5:18: fatal error: QImage: No such file or directory
compilation terminated.
make: *** [main.o] Error 1

看起来make无法找到与Qt相关的类的头文件。如何使用附加参数或环境变量告诉make它可以在哪里找到它们?我注意到默认情况下会包含一些搜索路径,但在我的环境中,它们位于/opt/QtSDK/Desktop/Qt/474/gcc/include/


根据要求,我的PRO文件。它最初是由Qt Creator生成的,所以没有什么不寻常的。

QT += core gui

TARGET = output
TEMPLATE = app

SOURCES += # Trimmed for brevity
HEADERS += # Trimmed for brevity

# Special build flags
DEFINES += ALLOWSYNCING

# These libraries are required for the program to operate
LIBS += -ljrtp -ljthread

1 个答案:

答案 0 :(得分:0)

CXXFLAGS =“ - I / opt / QtSDK / Desktop / Qt / 474 / gcc / include /”CFLAGS =“ - I / opt / QtSDK / Desktop / Qt / 474 / gcc / include /”LDFLAGS =“/ opt / QtSDK / Desktop / Qt / 474 / gcc / lib“make

然而,你可能在mac猜测..在这种情况下你应该只导出QT_DIR = / opt / QtSDK / Desktop / Qt / 474 /,并添加/ opt / QtSDK / Desktop / Qt / 474 / bin到你的PATH,一旦qmake运行就应该把所有东西都放到一边。