我想从Linux终端交叉编译堆Qt。当我运行qmake时,它会在我的上下文中应用mkspecs qmake.conf,以便必须定义CROSS_COMPILE变量。例如,有一个关键的conf线,看起来像这样:如何从命令行传递QMAKE变量?
QMAKE_CXX = $${CROSS_COMPILE}g++
QMAKE返回一个错误,但它清楚地表明$$ {} CROSS_COMPILE没有得到解决。它只是使用“g ++”而不是应该在那里的整个值。
我试图调用QMAKE从这样的bash脚本定义变量:
qmake qt.pro "CROSS_COMPILE=${CROSS_COMPILE}"
而且这样的:
qmake qt.pro -- "CROSS_COMPILE=${CROSS_COMPILE}"
而且它其他几个这样的刺。我也努力在这个命令中编码值,以防与它有任何关系。我试图将其定义为一个环境变量(以防万一)...
没有用。然而,我已经看到了一堆这样的语法似乎有效的例子。什么做错了?有没有一个字符逃脱并发症?
是'.qmake.conf'文件的可变部分吗?参数仅适用于pro文件,而不适用于qmake配置。可能需要通过'--spec'参数传递正确的qmake规范。检查'mkspecs'目录找到正确的目录,或创建自己的目录。这可能工作。 – Felix
谢谢,菲利克斯。我会看看--spec参数。 – BuvinJ