オブジェクト・ファイルに生成するデバッグ情報の種類を指定します。
なし
IA-32 アーキテクチャー、インテル(R) 64 アーキテクチャー、IA-64 アーキテクチャー
Linux* および Mac OS* X: | なし |
Windows: | /debug[:keyword] |
keyword | コンパイラーが生成するデバッグ情報の種類。設定可能な値は以下のとおりです。 | |
none | シンボルテーブル情報を生成しません。 | |
minimal | 行番号と最小限のデバッグ情報を生成します。 | |
partial | リンクに必要なグローバル・シンボル・テーブル情報を生成します。 | |
full | 完全なデバッグ情報を生成します。 | |
[no]semantic_stepping | ブレークポイントとステップ処理に役立つ拡張デバッグ情報を生成するかどうかを指定します。 | |
extended | semantic_stepping を有効にします。 |
/debug:none | コマンドラインと IDE のリリース構成のデフォルトです。 |
/debug:full | IDE のデバッグ構成のデフォルトです。 |
このオプションは、オブジェクト・ファイルにコンパイラーが生成するデバッグ情報の種類を指定します。
デバッグ情報の種類には、次のものがあります。
ローカル・シンボル・テーブル情報。非最適化コードのシンボリック・デバッグに必要。
グローバル・シンボル・テーブル情報。リンクに必要。
オプション | 説明 |
---|---|
/debug:none | シンボルテーブル情報を生成しません。この /debug オプションは、最小サイズのオブジェクト・モジュールを生成して、リンカーに /debug:none を渡します。 |
/debug:minimal | 行番号と最小限のデバッグ情報のみを生成します。リンクに必要なグローバル・シンボル・テーブル情報は生成しますが、デバッグに必要なローカル・シンボル・テーブル情報は生成しません。オブジェクト・モジュールのサイズは、/debug:none を指定した場合よりも若干大きくなりますが、/debug:full を指定した場合よりは小さくなります。このオプションは、リンカーに /debug:minimal を渡します。 |
/debug:partial | リンクに必要なグローバル・シンボル・テーブル情報は生成しますが、デバッグに必要なローカル・シンボル・テーブル情報は生成しません。オブジェクト・モジュールのサイズは、/debug:none を指定した場合よりも若干大きくなりますが、/debug:full
を指定した場合よりは小さくなります。このオプションは、リンカーに /debug:partial
を渡します。 注: このオプションは IDE では利用できません。 |
/debug:full または /debug | 完全なデバッグ情報を生成します。非最適化コードのシンボリック・デバッグに必要なローカル・シンボル・テーブル情報とリンクに必要なグローバル・シンボル・テーブル情報を生成します。最大サイズのオブジェクト・モジュールを生成します。このオプションは、リンカーに /debug:full を渡します。C ライブラリー・ルーチンを呼び出すアプリケーションに対して /debug:full を指定し、C ライブラリーへの呼び出しをデバッグする場合、適切な C デバッグ・ライブラリーへリンクさせるために、/dbglibs も指定する必要があります。 |
/debug:semantic_stepping | ブレークポイントとステップ処理に役立つ拡張デバッグ情報を生成します。 最終的に影響するソース文のマシン命令でデバッガーを停止します。例えば、代入文の場合、プログラム変数に値を代入するストア命令になります。関数呼び出しの場合、呼び出しを実行するマシン命令になります。これらのソース文用に生成された他の命令は、ステップ処理中は表示されません。 |
/debug:extended | デバッグオプション semantic_stepping を有効にします。 |
/debug:minimal | Linux および Mac OS X: なし Windows: /Zd (これは古いオプションです) |
/debug:full または /debug | Linux および Mac OS X: なし Windows: /Zi、/Z7 |