我正在尝试在命令行上编译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
答案 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运行就应该把所有东西都放到一边。