.aファイルに含まれるファイルを知る方法を教えてください。どのコマンドを使うべきですか?.aファイル内のファイルを一覧表示する方法
9
A
答えて
9
シンボルを削除しなかった場合は、nm
を使用してオブジェクトファイルの名前(.o
)を表示できます。
$ nm foo.a
foo.a(objectFile1.o):
0000000000000000 T _function1
foo.a(objectFile2.o):
0000000000000000 T _function2
この出力は、オペレーティングシステムによって異なります。例えば、ここではUbuntuシステム上libz.a
内のシンボルの出力は次のとおりです。
$ nm libz.a | grep ".o:"
adler32.o:
compress.o:
crc32.o:
gzio.o:
uncompr.o:
deflate.o:
trees.o:
zutil.o:
inflate.o:
infback.o:
inftrees.o:
inffast.o:
上記12個の.oファイルのそれぞれは、GCCに-c
オプションでコンパイル元のコード内の翻訳単位でした。私はgrep
を使用して、オブジェクトファイルのそれぞれで定義され参照されている無数のシンボルを無視しました。コンパイル後、これらのオブジェクトファイルは、ar
という静的ライブラリに結合されました。
ar
もオブジェクトファイルを抽出できます。同じlibz.a
に:
$ ar xv libz.a
x - adler32.o
x - compress.o
x - crc32.o
x - gzio.o
x - uncompr.o
x - deflate.o
x - trees.o
x - zutil.o
x - inflate.o
x - infback.o
x - inftrees.o
x - inffast.o
x
オプションは、抽出のためであり、v
は、それが抽出されるように、オブジェクト・ファイルの名前を印刷している、冗長です。
0
これは次のコマンドで動作します。 nm <> | grep ".o" | (// g "| sed" s /)。 // g "| sed" s /。 manページから、uniqの
2
私は(アーカイブを操作する)それが意味何のためにar
を使用する方が簡単だと思う
ar t foo.a
:
指定されたファイルの一覧を表示-tためにでそれらはアーカイブに表示され、それぞれ別の行に表示されます。ファイルが指定されていない場合、アーカイブ内のすべてのファイルが一覧表示されます。
man 1 ar
詳細については、
関連する問題
- 1. Dropbox - ディレクトリ内のファイルを一覧表示する方法
- 2. ディレクトリ内のファイルを一覧表示する方法
- 3. Pythonで.appファイルの内容を一覧表示する方法
- 4. テーブル内のファイルの一覧を表示
- 5. ファイル内の画像ファイルのみを一覧表示する
- 6. ファイルの一覧を表示
- 7. ディレクトリ内のすべてのファイルを一覧表示する方法Silverlight
- 8. メディアサーバーにあるファイルを一覧表示する方法は?
- 9. 選択した内部ディレクトリのファイルを一覧表示する方法
- 10. FAT:ディレクトリ内のすべてのファイルを一覧表示する
- 11. ディレクトリ内のすべてのファイルを一覧表示するPython
- 12. フォトライブラリ内のすべてのgifファイルを一覧表示する
- 13. MXDファイル内のレイヤーのフィールド名を一覧表示する
- 14. 特定のフォルダ内のファイルを一覧表示する
- 15. PHPがディレクトリ内のファイルを一覧表示するために
- 16. サブフォルダ内のファイル名を一覧表示する
- 17. フォルダ内のファイルを一覧表示する
- 18. リソースディレクトリJerseyサーブレット内のすべてのファイルを一覧表示
- 19. ディレクトリ内のファイルのみを一覧表示しますか?
- 20. GAE Pythonのファイルのダウンロード/一覧表示
- 21. ファイル一覧から写真を表示
- 22. ごみ箱にファイルを一覧表示
- 23. 開かれたファイルを一覧表示
- 24. 音楽ファイルを一覧表示
- 25. Webstartedアプリケーションのjarファイル内のすべてのファイルを一覧表示
- 26. jarファイル内の最後に変更されたファイルを一覧表示する方法
- 27. スタートアッププログラムを一覧表示する方法
- 28. BIRT - ページ変数の内容を一覧表示する方法
- 29. contentsOfDirectoryAtURLを使用してフォルダのファイルを一覧表示する方法
- 30. OpenShiftのファイル/ディレクトリを一覧表示/閲覧3
このリストには、ファイル内で使用されているすべてのオブジェクトも一覧表示されます。 .aの中のファイルだけを出力するコマンドは何ですか?たとえば、.aファイルは.aファイル内にあります。 – Abhinav
これは、正確に 'nm'があなたに伝えるものです。例えば、私のUbuntuマシンでは: 'nm /usr/lib/libz.a | grep ".o:" 'は' libz.a'を構成する12個の '.o'ファイルを返します。これはあなたが意味することですか? – greg
はい、そうです。しかし、nm my.aを使う| grep ".o:"私のメソッドは、.oファイルの中のいくつかを呼び出しますが、すべての.oファイルはリストしません。私はここで何か間違っていますか? – Abhinav