从命令行覆盖 qmake 变量
Posted
技术标签:
【中文标题】从命令行覆盖 qmake 变量【英文标题】:overwrite qmake variable from command line 【发布时间】:2018-12-14 13:54:03 【问题描述】:在 Qt 项目中,我在代码中使用了一个变量。 这是通过使用
APP_NAME = "QField"
DEFINES += "APP_NAME=\"\\\"$$APP_NAME\\\"\""
如何从命令行修改它?
我尝试在 qmake 构建步骤的附加参数中添加 APP_NAME=my_name
,但没有成功。
注意:APP_NAME 和 DEFINES 行位于 .pri 文件中,该文件包含在 qmake 调用的 .pro 文件中。
【问题讨论】:
【参考方案1】:如何从命令行修改它?
只需在 qmake 的命令行中指定 APP_NAME=my_name
。
我尝试在 qmake 构建步骤的附加参数中添加 APP_NAME=my_name,但没有成功。
这是因为随后覆盖了 .pro/.pri 文件中的变量。您应该添加条件以防止发生这种情况:
#APP_NAME = "QField"
!defined(APP_NAME, var):APP_NAME = "QField"
【讨论】:
以上是关于从命令行覆盖 qmake 变量的主要内容,如果未能解决你的问题,请参考以下文章