【发布时间】:2015-10-26 17:53:23
【问题描述】:
我希望 qmake 自动运行 (python) 脚本。这个脚本修改了makefile,所以它必须在qmake生成makefile之后,make之前执行。
到目前为止,我只找到了两种从 qmake 运行脚本的方法:
在我的 .pro 文件中使用 system(),但这在 qmake 之前运行 - 太快了:
win32: PYTHON=python.exe
else: PYTHON=python
system($$PYTHON ./test.py)
或通过使用QMAKE_EXTRA_TARGETS 的自定义构建目标,但这是由make 调用的(为时已晚)。
在 qmake 生成 makefile 后,有什么方法可以运行脚本吗?
【问题讨论】:
-
这里是same old question,但没有答案。 IMO最好解释一下为什么需要这个奇怪的功能?也许有替代解决方案?例如
cmake而不是qmake。 -
为什么不先有一个运行 qmake 的 shell 脚本/批处理文件,然后是你的脚本?
-
@MarekR:我正在为一个相当大的项目开发unity build - 我需要将所有 cpp 文件包含到一个文件中,并且只构建这个文件。但是我也想包含生成的moc文件,但是不知道在qmake运行之前是否可以知道所有的moc文件。
-
@MrEricSir:这是一个大项目,目前将所有内容从 qmake 切换到运行某个脚本文件会相当复杂。
-
@RedOctober:我明白了,这是可能的,但不是很容易维护。 Qmake 是从 ide、自动构建器、不同的脚本等运行的。如果可能的话,我将不得不更改所有这些情况,我想避免这些情况。