add_custom_command 执行错误

 add_custom_command: 带有OUTPUT参数的调用 用于生成项目中自动产生的源文件。

 add_custom_command(OUTPUT output1 [output2 ...]
                     # COMMAND command1 [ARGS] [args1...]
                     # [COMMAND command2 [ARGS] [args2...] ...]
                     # [MAIN_DEPENDENCY depend]
                     # [DEPENDS [depends...]]
                     # [IMPLICIT_DEPENDS <lang1> depend1 ...]
                     # [WORKING_DIRECTORY dir]
                     # [COMMENT comment] [VERBATIM] [APPEND])

add_custom_command(OUTPUT ${TEST_FILE} COMMAND echo "this is output log.txt" COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_FILE} ${TEST_FILE}       COMMENT "This is a test1")

以上命令,照着例子抄写,竟然提示内部出现错误,经过反复检查和理解,最终发现, 是最后一个COMMAND和COMMENT之间多写了几个空格导致错误。真是个坑啊,同时也觉得,没事别乱写空格,自己个自己挖了个坑。

set(TEST_FILE "log.txt")
add_custom_command(OUTPUT ${TEST_FILE} COMMAND echo "this is output log.txt" COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_FILE} ${TEST_FILE} COMMENT "This is a test1")
add_custom_target(Test1 ALL DEPENDS ${TEST_FILE})


 

猜你喜欢

转载自blog.csdn.net/kasteluo/article/details/85233013
今日推荐