¿Cómo puedo instalar objdump en Mac OS X?


46

Quiero obtener el código fuente de una pequeña herramienta de línea de comandos usando objdump en Mac OS X.

He usado arm-linux-objdump en Linux y me parece una gran herramienta.

¿Hay alguna forma de instalar objdump en OS X? Busqué en Google y encontré información sobre arm-apple-dawin9-objdump, pero no pude encontrar nada para descargar.

Respuestas:



32

Si tiene XCode Tools instalado en su Mac, puede usar el otool que viene con él. Creo que hace más o menos lo que objdumpes capaz de hacer.


14
+1 para otool - usar otool -tV <executable>para desmontar
Paul R

1
dwarftoolTambién ofrece una funcionalidad similar.
Mike Weller

3
¿Tiene otool una opción como objdump -S, que proporciona la salida del ensamblado anotada con el código fuente? Realmente no se pudo deducir de la salida --help.
rgngl

1
-bash: dwarftool: command not found
IgorGanapolsky

8

Si su archivo es de 64 bits, debe usar otool en lugar de gobjdump de binutils . En Mac OSX, gobjdump es para 32 bits.


2
A partir de 2017, gobjdump 2.27 (¿creo que lo obtuve de homebrew?)
Funciona

6

Puedes instalarlo con Homebrew:

$ 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

2

Debe usar otoolporque objdumpes una herramienta binutils para el formato binario ELF en Linux y la mayoría de los otros sistemas UNIX. otooles el desensamblador para el formato binario Mach-O de MacOS. Escriba $ man otoolpara instrucciones de uso.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.