【发布时间】:2020-09-21 18:15:47
【问题描述】:
一些 QMake 项目使用 system() 命令,这些命令仅在构建期间执行,通常仅用于特定操作系统,例如:
win32:system(cmd.exe /E myscript.bat)
从历史上看,Qt Creator 在解析 .pro/.pri 文件时会忽略此类命令。但从 Qt Creator 4.13.0 开始,它现在在项目加载期间运行它们,这可能会导致意外操作或失败。
我们如何告诉 Qt Creator 不要解析 .pro/.pri 文件中的特定语句或块,以便它们只能由 QMake 本身执行?
【问题讨论】:
-
@eyllanesc 感谢编辑,但标题中确实是 Qt Creator,而不是 Qt。诀窍在于 Qt Creator 本身解析 QMake 项目文件。我不认为“如何让 Qt 忽略我的 .pro 文件中的一些 QMake 命令”是准确的。
-
如果您更好地分析您的问题,您将看到它独立于 QtCreator,如果您打开终端并在没有 QtCreator 的情况下编译项目,您将看到该命令有效。