编译版libs/includes文件夹的动态qt路径

dynamic qt paths for libs/includes folders in compiled version

本文关键字:动态 qt 路径 文件夹 includes libs 编译      更新时间:2023-10-16

我为CentOS 6.4编译了qt 4.8.5。一切都很完美。当我使用这个编译的qt版本编译其他库时,只要我把安装程序文件夹放在同一位置就可以编译。如果我将安装程序文件夹移动到另一个位置,则会得到以下错误:

cd common/ && make -f Makefile 
make[1]: Entering directory `/path/MashLab/meshlab/src/common'
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DGLEW_STATIC -DQT_NO_DEBUG -DQT_SCRIPT_LIB -DQT_XMLPATTERNS_LIB -DQT_XML_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../qt/install_dir/mkspecs/linux-g++-64 -I. -I/path/qt/install/include/QtCore -I/path/qt/install/include/QtGui -I/path/qt/install/include/QtOpenGL -I/path/qt/install/include/QtXml -I/path/qt/install/include/QtXmlPatterns -I/path/qt/install/include/QtScript -I/path/qt/install/include -I../.. -I../../../vcglib -I../external/glew-1.7.0/include -I. -I../external/jhead-2.95 -I/usr/X11R6/inc
lude -I. -o filterparameter.o filterparameter.cpp
filterparameter.cpp:24:18: error: QtCore: No such file or directory
filterparameter.cpp:25:16: error: QMap: No such file or directory
filterparameter.cpp:26:17: error: QPair: No such file or directory
filterparameter.cpp:27:19: error: QAction: No such file or directory

即使我将环境变量导出到新的位置,它仍然会在安装路径中搜索lib和include:

$: export QMAKESPEC=/path/qt/install_dir/mkspecs/linux-g++-64
$: export QTLIB=/path/qt/install_dir/lib
$: export QTINC=/path/qt/install_dir/include
$: export QTDIR=/path/qt/install_dir

安装位置:/path/qt/install

新位置:/path/qt/install_dir

问题:是否有一种方法(一些参数)可以编译qt并使用lib/includes的动态路径?

使用Qt>= 5.3创建qmake旁边的Qt .conf(例如/path/Qt/install_dir/bin/Qt .conf)

[Paths]
Prefix = ..

如果这不起作用,检查qmake在哪个路径上用

查找qt.conf
strace qmake -query 2>&1 | grep qt.conf