如何在项目文件中使用环境变量的值?

问题描述 投票:0回答:1

我正在尝试将自制程序库添加到另一个项目。

根据另一个我现在找不到的答案的建议,我在mkspecs / features中创建了xyz.prf并添加了]]

    config += xyz

到我的项目文件。

xyz.prf包含

INCLUDEPATH += $XYZ_INC
DEPENDPATH += $XYZ_INC

win32:CONFIG(release, debug|release): LIBS += -L$XYZ_DIR -llibxyz
else:win32:CONFIG(debug, debug|release): LIBS += -L$XYZ_DIR -llibxyz
else:unix: LIBS += -L$XYZ_DIR -llibxyz

我已经在构建配置中定义了XYZ_INC和XYZ_DIR,并根据需要多次运行qmake。

但是,当我尝试构建时,链接时出现错误。

g++ -Wl,-rpath,/opt/Qt/5.12.5/gcc_64/lib -o someprogram someprogram.o   -L/home/alan/work/myStuff/sqlPrettyPrinter/v3/build-SQLPPv3-Desktop_Qt_5_12_5_GCC_64bit-Debug/test/test_collationname/../../libsqlpp/ -llibsqlpp -LYZ_DIR -llibxyz /opt/Qt/5.12.5/gcc_64/lib/libQt5Test.so /opt/Qt/5.12.5/gcc_64/lib/libQt5Core.so -lpthread   
/usr/bin/ld: cannot find -llibxyz

[现在,看g ++命令行,我看到-LYZ_DIR,它解释了ld为什么找不到libxyz-它应该是-L$XYZ_DIR-L<whatever XYZ_DIR expands to>

我已经尝试过$$$XYZ_DIR{XYZ_DIR}(XYZ_DIR)的每种组合。除上述组合外,其他方法均无效,最终会生成`-L'(没有任何目录)。

生成我所需的正确语法是什么?

抱歉-这个问题的答案比预期的要长;但是,我想不出一种可以合理缩短它的方法。

我正在尝试将自制程序库添加到另一个项目。按照我现在找不到的另一个答案的建议,我在mkspecs / features中创建了xyz.prf,并添加了config + = xyz ...

qt qmake
1个回答
0
投票

您必须使用$$(...)来获取环境变量:

© www.soinside.com 2019 - 2024. All rights reserved.