この特定のケースでは、mylib.aファイルが32ビットまたは64ビットの互換性があるかどうかを調べようとしています。共有オブジェクト(mylib.so)のlddに精通していますが、通常の.aアーカイブを検査するにはどうすればよいですか?
4625 次
4 に答える
12
「nm」と「ar」は、ライブラリアーカイブに関する情報を提供します。
于 2008-10-08T19:43:49.653 に答える
8
$ objdump -G /usr/lib/libz.a アーカイブ /usr/lib/libz.a: adler32.o: ファイル形式 elf32-i386 ... $ objdump -G /usr/lib64/libz.a アーカイブ /usr/lib64/libz.a: adler32.o: ファイル形式 elf64-x86-64 ... $ objdump -G /ppc-image/usr/lib/libz.a アーカイブ /ppc-image/usr/lib/libz.a: adler32.o: ファイル形式 elf32-powerpc ...
multilib-capable が必要ですがbinutils
、かなり簡単ですね。
于 2008-10-08T20:04:15.163 に答える
5
標準の「nm」および「ar」ユーティリティは、アーカイブに関する情報を提供します。
アーカイブの 32/64 ビット機能について知るには、「ar」を使用して mylib.a 内の .o ファイルを抽出し、.o ファイルで「file」を実行して、32/64 ビットの使用を含むタイプを検出します。
于 2008-10-08T19:52:29.243 に答える
0
一般的なケースでは、「ファイル」ユーティリティを使用します。
于 2008-10-08T19:49:17.770 に答える