4

在 PSPSDK (Homebrew) 中,我们使用 Binutils 2.16.1 来组装和链接 PlayStation Portable 的代码,但是该版本已经过时了(3 个版本已取代它)。社区和我一直在将 GCC 和 newlib 更新到最新的稳定版本,一切似乎都可以使用旧的 binutils。

GCC 会用 binutils 2.19 生成更好的代码吗?为什么?binutils 2.19 会产生比 2.16.1 更好的 elf 文件和库吗?为什么?

4

2 回答 2

5

binutils2.19 有一个新的 ELF 链接器gold,它是多线程的,用现代 C++ 编写,比通常的ld链接器快很多。但是,我不确定适应它所涉及的工作。

除此之外,新版本总是一个好主意。当然,很可能已经包含了性能和错误修复。我想我一定会尝试的,如果出现问题,您仍然可以后退。

于 2009-04-05T16:47:48.950 回答
1

一般来说,你不需要升级 binutils,除非你遇到了一些在更高版本的 binutils 中修复的 bug,或者需要新的特性(例如链接器 build-ids)。

特别是,GCC 代码生成在很大程度上独立于 binutils(除了 像这样的结构__thread,它需要 binutils 提供一定程度的支持)。

于 2009-04-05T16:33:02.340 回答