如何在Mac OSx上查看C++程序的可執行文件(例如a.out)的反彙編版本?在mac osx中反彙編由g ++創建的可執行文件
2
A
回答
3
看看otool
。即,otool -tv a.out
編輯:要添加到託尼的回答,objdump
也有名字demangling對於C++,即
objdump -tC a.out
(IIRC)
我就如何構建和安裝一個以前的答案binutils for darwin。
4
這不完全是你要求的,但g++ -S
從源代碼產生程序集,可以期望比反彙編版更具可讀性。
如果你不能用-S
(例如沒有源代碼)重新編譯,那麼gdb
可以讓你反編譯,就像objdump --disassemble
一樣。取決於你已經安裝了什麼。
另請參閱:https://superuser.com/questions/206547/how-can-i-install-objdump-on-mac-os-x
+0
+1:binutils遠遠優於達爾文的cctools。 – 2012-03-01 03:43:08
相關問題
- 1. 創建可執行的彙編代碼
- 2. Unix可執行文件無法在MAC OSX中執行
- 3. 從makefile中創建兩個單獨的可執行文件(g ++)
- 4. 反彙編對象和可執行文件的差異
- 5. g ++在mac osx中10.7
- 6. 可執行文件的註釋反彙編
- 7. 獲取可執行二進制文件的完整反彙編
- 8. 如何在OSX上創建.so可執行文件?
- 9. 是否可以在Linux上爲Mac創建可執行文件?
- 10. 是否可以在運行時創建「反彙編」類型?
- 11. 反彙編兩個由相同源代碼構建的.NET可執行文件有什麼區別?
- 12. 如何在Mac OS X上創建ELF可執行文件?
- 13. g ++可執行文件的格式
- 14. 使用VC編譯器在Eclipse中創建可執行文件
- 15. 下載文件彙編語言在OSX
- 16. 如何在fireMonkey Rad studio XE2中爲Mac Osx創建/編輯文本文件(.rtf)?
- 17. 從jar中創建可執行文件
- 18. 在Mac OSX中運行.jad文件Lion
- 19. 重定向由可執行文件創建的文件中的所有內容?
- 20. 反彙編Linux的能夠反彙編舊DOS.COM/.EXE文件
- 21. 由py2exe創建的可執行文件不工作
- 22. 調試由應用程序創建的可執行文件
- 23. 是在Qt上創建的應用程序,可在其他osx上執行可執行文件
- 24. g ++爲windows生成可執行文件
- 25. 如何通過g ++編譯獨立的可執行文件?
- 26. 可執行的JAR文件中創建沒有得到執行
- 27. 創建新的ELF可執行文件
- 28. 如何在Mac OSX Lion中創建.conf文件?
- 29. 無法在AVD文件夾中創建SD卡 - Mac OSX
- 30. IDE如何創建可執行文件?
+1思考demangling - 更具可讀性! – 2012-03-01 04:06:24