/SYMBOLS

更新 : 2007 年 11 月

/SYMBOLS

このオプションは、COFF シンボル テーブルを出力します。シンボル テーブルは、すべてのオブジェクト ファイルにあります。イメージ ファイルの場合は、/DEBUG を指定してリンクされている場合にのみ COFF シンボル テーブルが存在します。

/SYMBOLS を指定したときの出力について説明します。/SYMBOLS の出力の意味については、winnt.h (IMAGE_SYMBOL と IMAGE_AUX_SYMBOL) または COFF のドキュメントの追加情報も参考にしてください。

次のサンプル ダンプを例にして説明します。

Dump of file main.obj
File Type: COFF OBJECT

COFF    SYMBOL    TABLE
000    00000000   DEBUG      notype      Filename      | .file
      main.cpp
002   000B1FDB   ABS      notype      Static      | @comp.id
003   00000000   SECT1      notype      Static      | .drectve
      Section length       26, #relocs   0, #linenums    0, checksum 722C964F
005   00000000   SECT2      notype      Static      | .text
      Section length      23, #relocs      1, #linenums    0, checksum 459FF65F, selection    1 (pick no duplicates)
007   00000000   SECT2      notype ()   External      | _main
008   00000000   UNDEF      notype ()   External      | ?MyDump@@YAXXZ (void __cdecl MyDump(void))

String Table Size = 0x10 bytes

Summary

      26 .drectve
      23 .text

解説

シンボル番号で始まる行の、ユーザーに関連のある情報が含まれる列について説明します。

  • 最初の 3 桁の数字は、シンボルのインデックス/番号です。

  • 3 番目の列が SECTx の場合、シンボルはオブジェクト ファイルのそのセクションで定義されています。ただし、UNDEF となっている場合は、そのオブジェクトでは定義されているのではなく、ほかのいずれかの場所で解決されている必要があります。

  • 5 番目の列 (Static または External) は、そのオブジェクト内だけで参照できるシンボル、またはパブリックなシンボル (外部から参照できるシンボル) のいずれかであることを示しています。スタティック シンボルの _sym とパブリック シンボルの _sym はリンクされていません。これらは、_sym という名前の関数の異なる 2 つのインスタンスです。

番号が付いた行の最後の列は、シンボル名 (装飾形式と非装飾形式) です。

/GL コンパイラ オプションで生成したファイルで使用できるのは、/HEADERS DUMPBIN オプションだけです。

参照

参照

DUMPBIN オプション