在unix / linux系统上,如何了解有关mylib.a存档的更多信息?
题
在这种特殊情况下,我试图发现mylib.a文件是32位还是64位兼容。我熟悉ldd的共享对象(mylib.so)但是如何检查常规.a存档?
解决方案
"纳米"和“ar”将为您提供有关库存档的一些信息。
其他提示
$ objdump -G /usr/lib/libz.a In archive /usr/lib/libz.a: adler32.o: file format elf32-i386 ... $ objdump -G /usr/lib64/libz.a In archive /usr/lib64/libz.a: adler32.o: file format elf64-x86-64 ... $ objdump -G /ppc-image/usr/lib/libz.a In archive /ppc-image/usr/lib/libz.a: adler32.o: file format elf32-powerpc ...
需要支持multilib的 binutils
,但它非常简单,不是吗?
标准“nm”和“ar”实用程序将为您提供有关存档的信息。
要了解存档的32/64位能力,请使用“ar”。提取mylib.a中的.o文件,然后运行“file”在.o文件上发现它们的类型,包括32/64位用法。
在一般情况下,我只使用'file'实用程序。
不隶属于 StackOverflow