在Mac上构建完成后,让qmake执行shell脚本
问题描述:
在发布构建完成后,我想运行一个脚本。在Mac上构建完成后,让qmake执行shell脚本
我发现这个问题How to execute shell command after compile finished from .pro in QT?但答案不适用于我。我试着加入这个各种修改我的.pro文件:
CONFIG(release, debug|release) {
mytarget.target = ./MyScript.sh
mytarget.commands = touch $$mytarget.target
QMAKE_EXTRA_TARGETS +=mytarget
QMAKE_POST_LINK += mytarget
}
但这总是会导致“:-1:错误:mytarget:没有这样的文件或目录”。路径是正确的,'MyScript.sh'从命令行工作正常。
由于这适用于其他人,我想我做错了什么。我在Mac上使用Qt 4.7.2。
答
路径相对于建立目录。如果您的脚本不在您的build目录中,则必须更改路径。 尝试使用../MyScript.sh
你为什么使用目标?如果您的唯一目的是在构建之后执行MyScript.sh,您只需要
QMAKE_POST_LINK += ./MyScript.sh
我会尝试它(现在不行),但我不认为这是问题所在。 “MyScript.sh”与我的Forms目录位于同一层,其中包含几个其他地方使用的头文件。由于“INCLUDEPATH + = ./Forms”似乎在做它的工作,我假定“./MyScript.sh”是正确的。 – 2011-06-10 00:20:47
如果您想确定它,请尝试编写:“QMAKE_POST_LINK = pwd”。 – 2011-06-10 07:00:03
@Galadrius Krunthar:INCLUDEPATH变量将更改发送到编译器以查找头文件的包含路径。它不会改变makefile查找相关文件的位置 - 您必须手动输入这些路径。 – 2011-06-12 14:53:21