3

我正在尝试分析我的项目的构建时间,以便我可以看到花费最多的时间。这似乎应该很容易......如果我将每个clang命令都列在一个文件中,我可以对每个命令进行计时并按时间排序以找到耗时最长的编译,然后我可以进去看看哪些编译单位令人惊讶,并试图弄清楚为什么他们这么慢。

谷歌搜索让我无处可去。显然,这是可能的,而且很有用。

所以,要么:

  • 基本上这样做的选择是什么?

或者

  • 如何让 CMake/ninja 转储出clang它想要运行的所有命令的列表?
  • 或者,也许这样做的方法是编写一个脚本来记录命令和它所花费的时间并将其用作CXX_COMPILER_LAUNCHER?
4

1 回答 1

-1

要获取编译命令列表,请使用compile_commands.json

尝试使用ninjatracing工具以 Chrome 的 about:tracing 格式获取构建配置文件。

于 2021-05-05T15:11:53.407 回答