1
我正在使用CentOS 6.02 64位。我想查看.o文件中的信息和使用編譯器標誌。有任何指令或方法可以看到嗎?我已經通過使用objdump瞭解.a文件的體系結構。但無法看到.o文件的信息。如何在linux中查看.o文件的信息和編譯器標誌?
我正在使用CentOS 6.02 64位。我想查看.o文件中的信息和使用編譯器標誌。有任何指令或方法可以看到嗎?我已經通過使用objdump瞭解.a文件的體系結構。但無法看到.o文件的信息。如何在linux中查看.o文件的信息和編譯器標誌?
沒有從對象文件中提取編譯器標誌的一般方法。你可以通過編譯兩次,有和沒有像-fverbose-asm(僅影響asm生成的gcc標誌)之類的無操作開關並比較對象 - 它們將是相同的。然而,有一些編譯器特定的擴展可以讓你在編譯期間插入它們。在更新版本的gcc中使用-frecord-gcc-switches
,其中放置了.GCC.command.line
部分中使用的標誌。不同的編譯器在.comment部分插入各種信息,例如我編譯用gcc 4.7.2所示:
$objdump -s -j.comment <objfile>
objfile: file format elf64-x86-64
Contents of section .comment:
0000 00474343 3a202847 4e552920 342e372e .GCC: (GNU) 4.7.
0010 3200 2.
你當然也可以拿到架構相同的方式對某文件,與objdump -f
。
謝謝...解決了它... – 2013-02-15 04:24:00