我目前正在使用设备制造商提供的各种工具链将大型代码库移植到多个 arm 平台。如果我在 linux 上构建和链接代码库,链接大约需要 30 秒。对于我拥有的许多交叉编译器来说,这个时间大致相同,但对于其中几个来说,这个时间超过了 10 分钟以上。我已经尝试了许多技术来降低这个但没有任何帮助(例如创建一个超级库)。唯一显着不同的是与 -0 链接,这将时间缩短了近 40%,但仍然留给我 6 分钟的链接,并且在调试期间也不太理想,因为大部分代码都被优化了。
是什么让一个交叉编译器比其他编译器慢得多?一般来说,这些编译器的特性几乎相同(ARMv7、NEON 支持、gcc 4.x)。
有什么建议可以改善链接时间吗?我链接到 3 个静态库,其余的是到系统库的动态链接。