如何获取 OS X 的 readelf 和 objdump 二进制文件?

How to obtain readelf and objdump binaries for OS X?

我可以从哪里下载 OS X 的 readelf 和 objdump 二进制文件?我正在尝试从 NDK .so 库中获取导出函数的列表,但 nm 和 otool 都不适合我。我读到该库可能是 elf 格式,并且 readelf 或 objdump 可能有效。

我能够找到这些实用程序的源代码,但我想要二进制文件。肯定有人已经编译好了。

这篇 SO 文章中有很多信息:How do I list the symbols in a .so file 当 nm 对我不起作用时,推荐了 readelf 和 objdump。

这些工具作为 NDK 的一部分提供。您会在 NDK 的 toolchains 子目录中找到它们,例如android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-objdump。还有一个版本的 nm 实用程序可以理解您的 ELF .so 文件,arm-linux-androideabi-nm 在与上面相同的路径中。