通过分发目标文件加速编译
Posted
技术标签:
【中文标题】通过分发目标文件加速编译【英文标题】:Speeding up compile by distributing object files 【发布时间】:2011-05-12 10:56:44 【问题描述】:我有一个项目,它有多个分支,每个分支大约需要 1 小时才能在***机器上编译。我需要每周多次跨分支重新编译,跨多台机器,许多其他开发人员也在办公室这样做。
是否可以选择每晚的修订版,压缩目标文件,然后让开发人员同步到该修订版,提取目标文件。增量构建会起作用吗?下载/提取目标文件只需要 3 分钟,而不是 1 小时,因此这将是一个巨大的改进。
如果可能,必须考虑哪些事项?我假设跨机器的工具链必须相同(gcc 构建、osx 版本、指令集当然)。
【问题讨论】:
【参考方案1】:我曾在为网络共享上的不同分支(版本)构建机器的公司工作过。开发环境被设置为首先链接到本地对象和库(如果存在),然后是这些网络共享。
开发人员拥有完整的源代码,但只需要创建增量对象/库。这允许仅将开发更改应用于那些已更改的库,并且只要每个人都坚持类似的一天一次的更新周期,结果就可以了。在最坏的情况下,你又回到了构建完整的源代码。
【讨论】:
以上是关于通过分发目标文件加速编译的主要内容,如果未能解决你的问题,请参考以下文章