如何获取 .so 文件的依赖项列表?

How to get dependencies list for .so file?

假设我正在为 android (arm) 编译 libFoo.so。我不确定它链接到什么 STL 实现(有 options)。我如何获取依赖项(如 .so 列表)以了解我应该使用 System.load(...)/loadLibrary(...) 提供和加载哪些文件?

您可以使用objdump工具过滤掉相关部分。在这种情况下,例如arm-linux-androideabi-objdump -p libFoo.so | grep NEEDED.

建议的 ldd 工具通常也会执行此操作,但它会尝试实际查找将要加载的所有文件,并且它在交叉编译环境中并不总是可用。