Mac OS X'te objdump'ı nasıl kurabilirim?


46

Mac OS X'te objdump kullanarak küçük bir komut satırı aracının kaynak kodunu almak istiyorum.

Linux üzerinde arm-linux-objdump kullandım ve harika bir araç buldum.

OS X'e objdump kurmanın bir yolu var mı? Google’ı aradım ve arm-apple-dawin9-objdump hakkında bilgi buldum, ancak indirilecek bir şey bulamadım.

Yanıtlar:



31

Mac'inizde yüklü XCode Tools varsa, onunla birlikte gelen otool'ü kullanabilirsiniz . Neyin objdumpyapabileceğini çok iyi yaptığına inanıyorum .


13
Otool için +1 - otool -tV <executable>sökmeye kullanın
Paul R

1
dwarftoolayrıca bazı benzer işlevler sunar.
Mike Weller

3
Otool'un derleme çıktısını kaynak koduyla açıklamalı olarak veren objdump -S gibi bir seçeneği var mı? Gerçekten --help çıktısından anlaşılamadı.
rgngl

1
-bash: dwarftool: command not found
IgorGanapolsky

8

Dosyanız 64 bit ise , binutils'den gobjdump yerine otool kullanmanız gerekir . Mac OSX'te, gobjdump 32 bit içindir.


2
2017 itibariyle, gobjdump 2.27 (Sanırım homebrew'den aldım mı?)
MacOS'ta

6

Homebrew ile yükleyebilirsiniz:

$ brew install binutils
==> Downloading https://homebrew.bintray.com/bottles/binutils-2.25.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring binutils-2.25.yosemite.bottle.tar.gz
🍺  /usr/local/Cellar/binutils/2.25: 107 files, 140M
$ which gobjdump
/usr/local/bin/gobjdump

1

Kullanmalısınız otoolçünkü objdumpLinux ve diğer birçok UNIX sistemindeki ELF ikili formatı için bir binutils aracıdır. otoolMacOS'un Mach-O ikili formatının sökücüsüdür. Tip $ man otoolkullanımına ilişkin talimatlar için.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.