C增量版本可实现持续集成
作者:互联网
我们在VS2005中构建了一个相当大的C项目,从头开始进行编译和构建可能需要40分钟,而在32位和64位配置下都需要10分钟的安装时间.我希望将此时间至少减少到10分钟左右,因为我认为在使用持续集成时获得快速的构建反馈很重要.
当通过删除最终的链接文件而不是.obj文件来使用增量生成时,生成过程似乎要快得多,但是错误似乎会四处弹出,例如无法加载.dll.从一个干净的版本,一切正常.我正在使用TeamCity作为选择的CI系统.
也许增量版本的行为在Visual Studio的更高版本中更好,并且可能是升级的好动力?有没有人遇到过类似的问题?
解决方法:
好问题.
当我为Microsoft Visual Studio 2003/2005/2008的大型C项目组合CI系统时,我遇到了增量构建方面的问题.特别是在使用预编译的头文件时,似乎并不是在所有情况下都无法进行增量构建.我想听听是否有人对此有详细的解释,即什么有效,什么无效.
就我而言,该项目从头开始花费了一个多小时,因此为了在一天之内获得合理的反馈速度,我最终做了一个干净的每晚构建,即发布版本,而在一天之内,我使用了基于每夜.除增量建筑无法正确接收更改并重新编译所有必要内容的情况外,这非常有效.之所以尝试这种方法,是因为我认为快速获得反馈非常重要,如果增量构建每月一次或更少一次失败,那么我已经准备好适应这种局限性了.
总的来说,我喜欢做的事情比上面描述的要好,因此在其他项目中,有可能获得更多的硬件并重新组织要并行构建的组件,所以我通常会进行完整的重新构建.如果可以并行构建,则可以大大加快构建速度.
要考虑的其他事项是:
>包含与向前声明
>模板用法
>事物之间的一般依赖性
>将项目的一部分作为独立的库,甚至可以预先构建.
为了加快构建速度,可以做很多事情,而在大多数情况下,我会考虑将其视为增量构建.
标签:visual-c,build-automation,incremental-build,c 来源: https://codeday.me/bug/20191023/1913014.html