在Mac OS和Linux上发现动态库依赖

Vie*_*iet 53 linux windows macos dependencies

在Windows上有一个工具Depends.exe来发现EXE/DLL文件对其他DDL的依赖性.哪个命令行工具在Mac OS和Linux上是等效的?

mar*_*k4o 99

  • Mac OS X:otool -L 文件
  • Linux:ldd 文件

如果这些命令没有提供您想要的功能,则在Mac OS X上您可以使用otool -l file转储所有加载命令.在Linux上,您可以使用readelf -d 文件转储动态部分的全部内容.


小智 10

您还可以尝试MacDependency(http://macdependency.googlecode.com),它在MacOS X上为otool提供UI替换.它还显示完整的依赖树和导出的符号.


chu*_*uan 6

在终端尝试ldd.这将为您提供二进制文件所需的动态库列表.

  • 它适用于可执行文件.当我在Ubuntu 9.04中运行ldd aDynamicLib.so时,它说:"不是动态可执行文件".如何发现.so文件的依赖项?先感谢您! (2认同)