0

我正在尝试构建一个将使用 boost 二进制库的 qt 项目。我希望库的路径从 .sh 脚本传递到 qmake 并在 .pro 文件中扩展。所以我有这个 .pro 文件:

TEMPLATE = app
CONFIG += console
CONFIG -= qt

SOURCES += main.cpp

message("Master pro file path : ["$$[BOOST_LIBS_PATH]"]")

LIBS += -L$$[BOOST_LIBS_PATH]

和一个运行 qmake 的脚本文件:

BOOST_LIBS_PATH=/path/to/boost

echo $BOOST_LIBS_PATH

qmake-qt4 qt_test_proj.pro -r -spec linux-g++

但在我收到的合规输出

Project MESSAGE: boost libs path : []

所以BOOST_LIBS_PATH.pro文件中仍然是空的。

4

1 回答 1

2

我认为您可以使用环境变量传递路径,但您不设置任何变量。我会通过以下方式做到这一点。

在脚本文件中

export BOOST_LIBS_PATH="/path/to/boost"
echo $BOOST_LIBS_PATH

Qt 文档说

要在处理生成的 Makefile 时获取环境值的内容,请使用 $(...) 运算符。

所以在项目文件中

# Note the usage of $() operator.
message("Master pro file path : ["$(BOOST_LIBS_PATH)"]")
[..]
LIBS += -L$(BOOST_LIBS_PATH])
于 2013-10-30T10:04:02.707 回答