/Gm (簡易リビルドの有効化)
最小リビルドを有効にします。最小リビルドにより、(ヘッダー (.h) ファイルに格納されている) 変更された C++ クラス定義を含む C++ ソース ファイルを再コンパイルする必要があるかどうかが決定されます。
/Gm
解説
最初のコンパイル時に、コンパイラによってソース ファイルとクラス定義の間の依存関係情報がプロジェクトの .idb ファイルに格納されます。 (依存関係情報は、どのソース ファイルがどのクラス定義に依存し、どの .h ファイルに定義があるかを示します)。その後のコンパイルでは、.idb ファイルに格納されている情報が使用され、変更された .h ファイルが含まれている場合でも、ソース ファイルをコンパイルする必要があるかどうかが決定されます。
注意
最小リビルドは、クラス定義がインクルード ファイル間で変わらないことに依存します。.idb ファイル内の依存関係情報はプロジェクト全体に対して作成されるため、クラス定義はプロジェクトに対してグローバルである必要があります (特定のクラスの定義は 1 つのみである必要があります)。プロジェクト内のクラスに複数の定義がある場合は、最小リビルドを無効にします。
Incremental Linker は /ZW (Windows ランタイムのコンパイル) オプションの使用により .obj ファイルに含まれる Windows メタデータはサポートされないため、/Gm オプションは /ZW と互換性がありません。
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[C/C++] フォルダーをクリックします。
[コード生成] プロパティ ページをクリックします。
[最小リビルドを有効にする] プロパティを変更します。
このコンパイラ オプションをコードから設定するには
- 「MinimalRebuild」を参照してください。