对于一个静态库(.a文件),如何列出它的模块级依赖?
我知道对于共享库 (.so),我们可以使用 objdump 或 readelf 来执行此操作:
objdump -p test.so
或
readelf -d test.so
我可以得到类似的东西
NEEDED libOne.so
NEEDED libc.so.6
但是对于静态库,我只能获取符号级别的依赖,例如,通过运行
objdump -T test.a
我会得到这样的东西:
00000000 DF UND 00000000 QByteArray::mid(int, int) const
00000000 DF UND 00000000 QUrl::fromEncoded(QByteArray const&)
00000000 DF UND 00000000 QFileInfo::fileName() const
但是我需要模块级别的信息,有人知道如何获取该信息吗?
最佳答案
静态库没有这样的依赖列表。
静态库只不过是目标文件的存档。由于目标文件不知道它们依赖于哪些库,因此静态库也不知道。
关于linux - 如何列出c/c++静态库的依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40789518/