c – GCC /制作时间优化

前端之家收集整理的这篇文章主要介绍了c – GCC /制作时间优化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有使用 gcc和make文件的项目.项目还包含一个大型子项目(SDK)和许多相对较小的子项目,它们使用该SDK和一些共享框架.

我们使用预编译头文件,但这只能帮助重新编译更快.

是否有任何已知的技术和工具来帮助构建时间优化?或者也许你知道一些关于这个或相关主题文章/资源?

解决方法

您可以从双方解决问题:重构代码以减少编译器看到的复杂性,或加快编译器执行速度.

在不接触代码的情况下,您可以添加更多的编译功能.使用ccache避免重新编译已编译的文件,并且distcc可以在更多的机器之间分配构建时间.使用make -j,其中N是核心数量1,如果您在本地编译,或更大的数字用于分布式构建.该标志将并行运行多个编译器.

重构代码.优先声明包括(简单).尽可能多地去耦,以避免依赖(使用PIMPL惯用语).

模板实例化是昂贵的,它们在使用它们的每个编译单元中重新编译.如果你可以重构你的模板来转发声明它们,然后在一个编译单元中实例化它们.

猜你在找的C&C++相关文章