当我构建CMake项目时,依赖项扫描很慢。使用 htop 调查我的大型项目,向我指出了命令
/usr/bin/cmake -E cmake_depends Makefiles [...]
在单个线程上运行。这可以加快吗?也许有并行/多线程?
"溶液"
我从现在开始使用忍者,这在检测deps和收集所需数据以进行编译方面要快得多。
感谢您的所有答案!
答案 0 :(得分:3)
严格来说,这不是一个CMake问题,而是一个如何使用构建工具的问题。
使用性能更佳的构建工具!
对于Unices:尝试使用Ninja代替Make。 Ninja比跟踪依赖关系要快10倍,并找出必须构建的内容,参见http://jpospisil.com/2014/03/16/replacing-make-with-ninja.html
对于Windows / Visual Studio:Recommendations to speed C++ builds in Visual Studio
请使用PCH进行项目 DO包括PCH中常用的系统,运行时和第三方标题 DO包括很少改变PCH中的项目特定标题 请勿包含经常更改的标题
请定期审核PCH,以便及时了解产品流失情况 请使用/MP
请删除/Gm
以支持/MP
请与#import
解决冲突并使用/MP
DO USE链接器开关/incremental
DO USE链接器开关/debug:fastlink
请考虑使用第三方构建加速器