c – 使用boost库加快编译链接时间

c – 使用boost库加快编译链接时间,第1张

概述我正在使用 Boost Program Options,它需要相当长的时间(10秒甚至更多)来编译非常小的C代码.编译没有boost库需要1秒钟的时间. 任何想法如何通过boost库提高编译/链接时间?它是跨平台,所以我需要使用Mac OS X / Linux / PC编译代码. 没有什么可以做超越通常的技巧: >最小化依赖关系:仅引用您真正需要的Boost标题,并尽可能使用特定的标头(许多库具有 我正在使用 Boost Program Options,它需要相当长的时间(10秒甚至更多)来编译非常小的C代码.编译没有boost库需要1秒钟的时间.

任何想法如何通过boost库提高编译/链接时间?它是跨平台,所以我需要使用Mac OS X / linux / PC编译代码.

解决方法 没有什么可以做超越通常的技巧:

>最小化依赖关系:仅引用您真正需要的Boost标题,并尽可能使用特定的标头(许多库具有单个“主”标题,例如boost / thread.hpp,还包括具有特定标题的子目录,如boost /thread/shared_mutex.hpp)
>在可能的情况下,依靠前向声明而不是包括整个标题,
>如果可能,仅在.cpp文件中包含标题.如果将其包含在标题中,则必须在每次包含该标题的翻译单元被编译时进行编译.作为一般的经验法则,尽量减少标题中的代码量,
>所有主要编译器都支持预编译头.用这些减少编译时间,
>实验unity builds.这可能是也可能不是你的情况的优势.

最后,但并非最不重要的是,最后一个选择是不要使用那些特定的Boost库.

我有时在早期使用某些Boost库,出于方便,如果/当编译时间太差时,我开始考虑哪些库编译成本昂贵,哪些库可以被相对简单的代码替代.通常情况下,Boost将受到如此笼统的要求的束缚.如果您不需要在8岁的编译器上工作的东西,或者不需要像这么多不同类型的工作,那么您可以编写一个简单的替换工具,对您而言几乎没有时间编译.

总结

以上是内存溢出为你收集整理的c – 使用boost库加快编译/链接时间全部内容,希望文章能够帮你解决c – 使用boost库加快编译/链接时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1249585.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存