如何添加一个带有sh文件的文件夹以通过System()调用cmake

时间:2019-04-08 07:05:55

标签: c++ linux cmake

我有一个Source文件夹,其中包含一个名为test.sh的.sh文件。使用c ++,vi可以使用system("Source/test.sh")调用.sh文件。如何将目录添加到c ++项目中,因此如果可执行文件不在根目录中,则可以调用该文件。

1 个答案:

答案 0 :(得分:0)

您可以按以下方式使用execute_process:

execute_process (
    COMMAND bash -c " your command"
    OUTPUT_VARIABLE outVar
)

因此,如果您要复制文件:

set(MAKECMD "cp myf/ile")
list(APPEND MAKECMD ${CMAKE_CURRENT_SOURCE_DIR})
execute_process (
    COMMAND bash -c ${MAKE_CMD}
    OUTPUT_VARIABLE CMDOUTPUT
)

有关更多信息:https://cmake.org/cmake/help/v3.0/command/execute_process.html