1
8
我不知道任何并行链接工具;我知道incredibuild不允许这样做。 工具箱中避免链接时间的最大工具是适当的抽象级别。如果链接时间很长,可能是因为对象对其他对象了解得太多。然后,分离它们是关键——通过抽象接口(可能使用PIMPL范式),或者通过事件传递等其他方法。 通过项目依赖关系链接项目的开销也相当高。如果您的目标平台只是win32,或者主要是win32,那么您可以考虑使用一个头部通过pragma comment(lib,“pathtolib”)链接您的依赖库。 |
2
7
如果没有优化就可以生存,关闭链路时间代码生成(删除/GL交换机或属性C/C++ +GT;优化-GT;整个程序优化)。对于链接器remove/ltcg或使用链接时间代码生成设置)。但这会使编译器变慢,因为代码生成现在在编译期间发生。 我见过用/gl+/ltcg构建项目需要数小时,而不用几秒钟(例如: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/750ed2b0-0d51-48a3-bd9a-e8f4b544ded8 ) |
3
2
你考虑过改进硬件吗?
作为一个一般性的建议:投入一些记忆,得到 Velociraptor ,只放置源文件并在其中建立目录,再次测量。如果这有帮助,可以考虑使用RAID 0。 我听说从xp内核升级到w2k3内核可以显著提高构建时间,这可能是由于更好的内存管理和缓存。 作为更改代码的建议,您可以将一些功能移到一个dll,并并行链接。但我不会仅仅为了提高构建时间而进行这样的更改。 |
4
0
有一些一般的设置建议 Improving link time with IncrediBuild 您还可以跳过静态lib的链接,这样就不会使用 IncrediLink 我们发现,添加一个签名的后期生成步骤将阻止incredibuild处理以下项目,向后期生成添加注释应该会有所帮助。
|
irio lavagno · 应用程序和插件之间的库不匹配 1 年前 |
Will · 嵌入链接器脚本-是否正确放置“堆栈”和“堆”区域? 6 年前 |
Leo Brown · Eclipse/MinGW不会链接库 6 年前 |
Som · 使用cmsis库中的fft例程时,引用未定义 6 年前 |
Felix · 将仅标头库包含到多个文件中会产生链接器错误 6 年前 |
FeelTheBurns · 未调用RISCV全局对象构造函数 6 年前 |