6

如 readelf 所示,我在注释部分有一个包含两行的可执行文件:

readelf -p .comment ac_test

String dump of section '.comment':
  [     0]  GCC: (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973]
  [    39]  GCC: (GNU) 4.6.0

4.3.4 编译器是安装在 Suse Linux 中的编译器,但 4.6 是从源代码编译的。我已将 PATH 修复为指向 4.6,以便编译可执行文件。

我怀疑是否以任何方式使用了 4.3.4 工具链。

我的问题是:为什么我在 .comment 部分有两个编译器?这有什么问题吗?

谢谢。

4

1 回答 1

4

很难用那一点点信息说,但是来自 4.3.4 编译器的注释很可能来自链接到您的二进制文件的对象或库(即您没有使用 4.6 编译器自己编译它)。

于 2013-04-26T15:22:05.367 回答