0
我有一个命令在POST_BUILD步骤中使用add_custom_command()
执行。这需要相当长的一段时间,但我不需要结果来运行可执行文件,我只是希望它在构建之后启动。有没有办法在后台运行这样的命令,以便可以在构建之后立即运行可执行文件而无需等待命令完成?CMake add_custom_command在后台运行
我有一个命令在POST_BUILD步骤中使用add_custom_command()
执行。这需要相当长的一段时间,但我不需要结果来运行可执行文件,我只是希望它在构建之后启动。有没有办法在后台运行这样的命令,以便可以在构建之后立即运行可执行文件而无需等待命令完成?CMake add_custom_command在后台运行
如果您愿意使用某些特定于平台的逻辑,一种方法是使用shell脚本来启动您想要在后台运行的命令。 Unix系统一个非常原始的例子可能是这样的:
launcher.sh:
#!/bin/sh
"[email protected]"&
的CMakeLists.txt:
add_custom_command(TARGET myTarget POST_BUILD
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/launcher.sh whateverYouWantToRun
)
你可以添加的东西等同于Windows和然后测试CMAKE_HOST_SYSTEM_NAME
变量以选择使用哪个启动脚本。
我已经试过这种方法没有成功。也许这是IDE等待所有衍生进程(我在XCode和Mac上的AppCode中测试过)。 –
是的,感谢您的评论我意识到这个问题不是在CMake方面,我找到了解决方案https://stackoverflow.com/questions/16028336/xcode-build-phases-run-script-in-background-without -blocking建造 –