我已经设置了这样的环境变量:
XXX_ENV H:\ xxx
我可以看到
H:\ XXX
当我运行命令
时echo%XXX_ENV%
在cmd中。 然后我有一个像这样的Qt .pro文件:
> INCLUDEPATH += ($$(XXX_ENV))/include
但不幸的是,INCLUDEPATH无法正常工作,我无法在H:\ xxx \ include
中使用这些.h文件如何在qmake文件中使用环境变量?
---------------------更新---------------------- -----------
可能是我的描述不够详细。
情况就是这样。我在项目中引入了第三方组件。相关文件位于H:\ XXX中,我可以使用H:\ XXX \ include中的头文件。所以我的qmake可以这样写:
INCLUDEPATH += H:/XXX/include
然后我可以使用头文件" aaa.h"在目录H:\ XXX \ include下面就是这样:
#include <aaa.h>
但我不想在qmake文件中写绝对路径。所以我选择了一个Windows环境变量(不是qmake文件&#39; s变量)XXX_ENV,它的值是&#34; H:\ XXX&#34;(或&#34; H:。/ XXX&#34)
我只想知道我可以写 INCLUDEPATH + = $$ {XXX_ENV} / include 而不是 INCLUDEPATH + = H:/ XXX / include
我尝试了但它没有用。
答案 0 :(得分:5)
有关详细信息,请参阅documentation:
变量可用于存储环境变量的内容。这些可以在运行qmake时进行评估,也可以在生成的Makefile中包含,以便在构建项目时进行评估。
要在运行qmake时获取环境值的内容,请使用$$(...)运算符:
DESTDIR = $$(PWD)
message(The project will be installed in $$DESTDIR)
你的问题似乎不准确,究竟是什么&#34;不起作用&#34;意思是,如果路径中有空格等,你应该使用quote function
引号(字符串)
将整个字符串转换为单个实体并返回结果。这只是将字符串括在双引号中的一种奇特方式。