调试GCC编译时间

时间:2011-06-17 19:01:27

标签: c++ gcc

我正在使用linux中的gcc4.6在C ++(0X)中创建一个相当大的库。我的库很大程度上依赖于模板类,导致使用该库的应用程序的编译时间很长。我想通过提供最糟糕的违规类型/方法的明确实例来开始加快速度。

有没有办法让gcc报告编译各种类型/方法所花费的时间,以便我可以以原则方式应用我的显式实例,而不是通过直觉?

2 个答案:

答案 0 :(得分:23)

g ++ some_file.cc -ftime-report

将粗略估计在不同编译阶段花费的时间。在您的情况下,最重要的是名称查找和解析。

无法获得每个类/函数的编译时间。

STeven Watanabe提出了一个模板分析器,可在boost沙箱中使用,有助于获得.cc中任何内容的潜在实例化数量

答案 1 :(得分:0)

我知道这不是你想要的,但也许 ccache / distcc 可能有助于加快编译速度。

此外,如果您有多核计算机,您可以利用 make -jN 立即告诉make run N 作业。

也不要忘记预编译标题