63
SYMBOL TABLE:
0000000000000000  w      *UND*  0000000000000000              __gmon_start__

行っman objdumpたけどそんな情報ない

5つの列の意味を知っている人はいますか?

4

5 に答える 5

89

COLUMN 1: シンボルの値

COLUMN TWO: シンボルに設定されたフラグ ビットを示す文字とスペースのセット。以下に示す 7 つのグループ分けがあります。

グループ 1: (l,g,,!) ローカル、グローバル、どちらでもない、両方。

グループ 2: (w,) 弱いまたは強いシンボル。

グループ 3: (C,) symbol は、コンストラクターまたは通常のシンボルを示します。

グループ 4: (W,) 記号は警告または正常な記号です。

グループ 5: (I,) 別のシンボルまたは通常のシンボルへの間接参照。

グループ 6: (d,D,) デバッグ シンボル、動的シンボル、または通常のシンボル。

グループ 7: (F,f,O,) シンボルは、関数、ファイル、オブジェクト、または通常のシンボルの名前です。

列 3: シンボルが存在するセクション。ABSは特定のセクションに関連付けられていないことを意味します。

COLUMN FOUR: シンボルのサイズまたは配置。

列 5: シンボルの名前。

追加情報が必要な場合は、man ページ ;-) または次のリンクを試してください: http://manpages.ubuntu.com/manpages/intrepid/man1/objdump.1.htmlおよびhttp://sourceware.org/binutils/docs /binutils/objdump.html

于 2013-05-09T22:04:11.997 に答える
8

以前の回答はどれも正しくないように見えるため、実際に探しているものは次のとおりです。

役立つかもしれないこのリンクからのスニペットを次に示します。

「通常、ELF ベースのファイルで見られる他の一般的な出力形式は、次のようになります。

      00000000 l    d  .bss   00000000 .bss
      00000000 g       .text  00000000 fred

ここで、最初の数字はシンボルの値です (アドレスと呼ばれることもあります)。次のフィールドは、実際には、シンボルに設定されているフラグ ビットを示す一連の文字とスペースです。これらの文字については、以下で説明します。次は、シンボルが関連付けられているセクションです。セクションが絶対的な場合 (つまり、セクションに接続されていない場合) はABSです。また、セクションがダンプされるファイルで参照されているが、そこで定義されていない場合はUNDです。

セクション名の後に別のフィールド、数値が続きます。一般的なシンボルの場合は配置であり、他のシンボルの場合はサイズです。最後にシンボルの名前が表示されます。」

于 2012-08-09T20:33:48.683 に答える
7

objdump -tは、ファイルのシンボル テーブル エントリを出力します。出力は、 nmプログラム
によって提供される情報に似ています。

出力には7 つの列があります。

  • 価値
  • クラス
  • タイプ
  • サイズ
  • ライン
  • セクション
  • シンボル名

(一部のエントリでは、一部の列が空白になる場合があります)

objdumpは、シンボル名一番左の列に出力します。
nmは、シンボル名一番右の列に出力します。

于 2012-07-13T14:36:30.440 に答える
1

http://www.cs.swarthmore.edu/~newhall/unixhelp/compilecycle.html#runtime

$ nm --format sysv simple # システム V 形式は、デフォルトの bsd 形式より読みやすい

名前 値 クラス タイプ サイズ ライン セクション

...
フー |080484e6| T | T | FUNC|0000000c| |.text
于 2011-07-13T10:43:58.797 に答える