0

在两个 AIX 系统上使用相同源构建的两个二进制文件之间的符号存在一些差异。“主要”的一个例子:


xxxx1: .main                T  4294975624

xxxx2: .main                T  4294969472         516
xxxx2: main:F-1             -           0

为什么大小不一样?

'T' 是手册页中的全局文本符号。什么是'F'?

此外,两个二进制文件的大小差异很大:3924048 与 17701460。为什么?

AIX 版本、编译器版本、makefile(相同的 CFLAGS)是相同的。

4

1 回答 1

0

我相当确定 F-1 是一个返回 int 的函数。它是一个“stab”字符串,当编译器给出 -g 选项时输出。这也是大小差异的原因。

你可以尝试做“大小”和“大小”。size 还可以选择使其更详细。你也可以做“文件”等,它会告诉你它是否被剥离。

在链接时 -g 和 strip 标志之间,我认为这将解释您所看到的差异。

高温高压

于 2013-03-22T02:01:57.640 回答