CMake中与make -k功能对等的命令是什么?
CMake 对应
make -k 功能的实现方法 CMake 本身是构建系统生成工具,不直接执行编译流程,所以不存在内置的对等参数,相关逻辑需要通过传递参数给生成的后端构建工具实现:
常用场景操作方式
- 如果你使用通用的
cmake --build命令触发编译:
需要在--之后追加对应后端的继续编译参数,比如用 Makefile 后端时命令为:cmake --build . -- -k
用 Ninja 后端时对应参数为-k 0(0 代表无限制继续编译所有不依赖出错目标的任务),命令为:cmake --build . -- -k 0 - 如果你直接使用生成的 Makefile 执行编译:
直接使用原生的make -k命令即可,和普通 Make 项目用法完全一致。 - 如果你想生成构建系统时就默认开启继续编译逻辑,不需要每次手动传参:
生成 Makefile 时指定CMAKE_MAKE_FLAGS变量即可:cmake .. -DCMAKE_MAKE_FLAGS="-k"
注:该逻辑的实际效果和原生
make -k完全一致:遇到某文件编译错误时,不会立即终止整个构建流程,会继续编译所有不依赖出错目标的其余文件,直到所有可完成的构建任务都执行结束后再返回错误。
内容的提问来源于stack exchange,提问作者David Casper
相关产品推荐
相关产品推荐

