2013-03-21 111 views
0

在兩個AIX系統上使用相同源構建的兩個二進制文件之間的符號中有一些差異。爲 '主' 的一個例子:AIX二進制文件 - 大小和符號


xxxx1: .main    T 4294975624 

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

爲什麼大小的區別?

'T'是按手冊頁的全局文本符號。什麼是'F'?

此外,兩個二進制文件的大小差別很大:3924048與17701460.爲什麼?

AIX版本,編譯器版本,makefile(相同的CFLAGS)是相同的。

回答

0

我很肯定F-1是一個返回int的函數。它是一個「stab」字符串,在編譯器給出-g選項時輸出。這也是大小差異的原因。

你可以嘗試做「尺寸」和「尺寸」。大小也有一個選項,使其更加詳細。你也可以做「文件」等,它會告訴你它是否被剝離。

在鏈接時間-g和帶狀標誌之間,我認爲這將解釋你所看到的差異。

HTH