【问题标题】:Debugging GCC Compile Times [duplicate]调试 GCC 编译时间
【发布时间】:2011-09-17 10:42:01
【问题描述】:

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

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

【问题讨论】:

    标签: c++ gcc


    【解决方案1】:

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

    另外,如果你有多核机器,你可以利用 make -jN 来告诉 make 一次运行 N 个作业。

    不要忘记预编译的头文件

    【讨论】:

    • 幸运的是,我有可以编译的服务器场 - 但是,我正在努力为任何想要编译所有这些疯狂模板的可怜用户提供更快的速度。
    【解决方案2】:

    g++ some_file.cc -ftime-report

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

    唉,没有办法获得每个类/函数的编译时间。

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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 2013-03-11
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    相关资源
    最近更新 更多