Target Clean (CMake) 后打印消息

Posted

技术标签:

【中文标题】Target Clean (CMake) 后打印消息【英文标题】:Print message after Target Clean (CMake) 【发布时间】:2018-01-29 11:37:29 【问题描述】:

我想在目标clean成功执行后打印一条消息。 我试过了

add_custom_command ( TARGET clean POST_BUILD
     COMMAND $CMAKE_COMMAND -E echo "Cleanup done in Project '$CMAKE_PROJECT_NAME'"
)

但 CMake 声称 “没有在此目录中创建 TARGET 'clean'。” 当然clean不是在这个目录下创建的,CMake应该自己生成这个target。

还有其他方法可以编辑clean或添加说明吗?

【问题讨论】:

clean 目标之后打印一条消息是您真正想做的吗?为什么?消息的目的是什么?它应该解决什么问题? 【参考方案1】:

恕我直言,清洁不应更改或修改,因为用户期望明确定义的行为。

这样做:

add_custom_target(CustomClean
    COMMAND $your_commands
    COMMAND $CMAKE_COMMAND --build . --target clean --config $<CONFIG>
)

【讨论】:

以上是关于Target Clean (CMake) 后打印消息的主要内容,如果未能解决你的问题,请参考以下文章

新安装CCS 后编译出现问题:gmake:No rule to make target clean

maven clean后 编译报错

如何定义自定义清理命令?

使用cmake时 什么时候删掉整个build,什么时候只需要make clean

idea修改忽视文件产生得bug

cmake报错Targets may link only to libraries. CMake is dropping the item.