如何使用 CMake 自定义 Ninja 日志输出?(可能的?)

Max*_*kov 11 c++ makefile cmake ninja

当我使用Makefile进行编译时,构建日志是丰富多彩且详细的。但是当我使用Ninja时,我只得到一行有进度的信息,没有百分比和颜色。如何使Ninja构建日志看起来像Makefile的日志?这是否可能,或者必须需要Ninja开发人员采取行动?

例子:

生成文件日志:

忍者日志:

PS欢迎任何方法,将在本地使用。

PPS如果没有人,就说目前这是不可能的。

Ale*_*oni 2

按照Ninja 文档,您可以通过设置带有多个占位符的环境变量来自定义进度状态NINJA_STATUS

在您的情况下,要打印百分比,您必须在运行 ninja 之前设置此变量(假设您在 unix 环境上运行 ninja):

export NINJA_STATUS="[%p ] "

cmake -GNinja ..
ninja
Run Code Online (Sandbox Code Playgroud)