Qt Creator:复制.exe输出到一个文件夹



我很抱歉,如果这个问题已经问过了,但经过一些研究,我找不到答案。我想把项目的。exe文件自动复制到文件夹中。

我使用Qt creator 5.0.1 MSCV2010,它总是有两个输出:发布和调试。

例如,我希望/release/project.exe/release/exec/project.exe中。

我看到我可以复制像。dll这样的文件在。pro中使用:

INSTALLS =

但是它只对已经存在的文件起作用,或者编译后生成。exe。我想我可以将其指定为:

projects settings->Build compilation->step Make : jom.exe in C:pathtoproject-release

但我不知道需要什么论据,关于

在Windows上,您可以使用DLLDESTDIR变量指定复制目标dll或exe的位置。只要把这个添加到你的。pro:

CONFIG(release, debug|release): DLLDESTDIR +=  $$PWD/../exec

在Linux上,您可以使用QMAKE_POST_LINK变量,其中包含将TARGET连接在一起后要执行的命令。就像这样:

CONFIG(release, debug|release): QMAKE_POST_LINK += $$quote(cp project $$PWD/../exec)

这里project是您通过TARGET = project

提供的目标文件的名称

将可执行二进制文件复制到一个名为exec的目录,该目录比程序工作目录高一级。

使用命令和参数添加自定义构建步骤

对于Windows(假设您在发布版本中这样做):

xcopy
Release<target.exe> pathtodestinationfile.exe /Y
%{buildDir}

应该可以。我找不到任何指向target_path的变量。所以我定义它:

### to copy target file to build folder
CONFIG(debug, debug|release) {
    TARGET_PATH = $$OUT_PWD/debug
}
CONFIG(release, debug|release) {
    TARGET_PATH = $$OUT_PWD/release
}
win32: QMAKE_POST_LINK += copy /y "$$shell_path($$TARGET_PATH/app_name.exe)" "$$shell_path($$PWD/../build/)"
unix: QMAKE_POST_LINK += cp "$$shell_path($$TARGET_PATH/app_name)" "$$shell_path($$PWD/../build/)"

最新更新