1

我正在编写应该执行以下操作的 CMake 脚本:

  1. 制作一个静态库。
  2. 使用 python 脚本处理上述库文件。

注意(2)应该在构建静态库之后进行。据我了解,add_custom_command这是行不通的,因为它是在配置过程中处理的。我尝试使用execute_process,如下所示:

EXECUTE_PROCESS(
  COMMAND ${SCRIPT} --source /my/path/myLib.a --dest ${TEMP_DIR} 
  WORKING_DIRECTORY ${TEMP_DIR} 
)

它似乎也不起作用,原因有两个:1)它不识别变量;2)即使我放置了硬编码的路径,它也会过早地被调用。

那么完成上述序列的正确方法是什么?

4

1 回答 1

1

不,反之亦然。在生成期间执行_process ,在编译期间添加_custom_command。只需将其添加到目标(POST_BUILD -构建目标):

add_custom_command(
    TARGET
    ${target}
    POST_BUILD
    COMMAND
    ${cmd} # your python script
    WORKING_DIRECTORY
    ${YOUR_DIR} # command working directory
    COMMENT
    "your comments" # you will see this message, when python script invoke
)
于 2013-08-19T16:17:32.817 回答