如何列出CMake配置的Ninja构建项目的所有可用目标?
如何列出CMake配置的Ninja构建项目的所有可用目标?
嘿,这个场景我太熟悉了!给你几个简单好用的方法,帮你快速找到所有可构建的目标:
用Ninja自带的目标列表命令
直接在你的build目录下运行:ninja -t targets这个命令会输出所有Ninja已知的目标,包括你定义的业务目标和一些自动生成的phony(伪)目标。如果只想看自己关心的真实构建目标,可以过滤掉phony项:
# Linux/macOS 下 ninja -t targets | grep -v phony # Windows 命令提示符下 ninja -t targets | findstr /v phony借助CMake的构建帮助命令
既然项目是CMake配置的,也可以用CMake的build命令来查询目标:cmake --build . --target help这个输出会更规整,清晰列出所有可通过
cmake --build . --target <目标名>构建的目标,甚至还会附带简短说明。直接查看build.ninja文件(备选方案)
如果上面的命令都没法用,你也可以直接打开build.ninja文件,搜索build关键字——每个build行的第一个部分就是目标名称。不过这个方法会看到很多CMake自动生成的内部目标,需要自己甄别,不如前两个方法高效。
备注:内容来源于stack exchange,提问作者einpoklum
相关产品推荐
相关产品推荐

