C/C++ プロパティ (Linux C++)

Linux サポートは Visual Studio 2017 以降で使用できます。

全般

プロパティ 説明 選択
追加のインクルード ディレクトリ インクルード パスに追加する 1 つ以上のディレクトリを指定します。 複数ある場合は、セミコロンで区切ります。 (-I[パス])。
デバッグ情報の形式 コンパイラによって生成されるデバッグ情報の種類を指定します。 なし - デバッグ情報が生成されないため、コンパイルが高速になる可能性があります。
最小限のデバッグ情報 - 最小限のデバッグ情報を生成します。
完全なデバッグ情報 (DWARF2) - DWARF2 デバッグ情報を生成します。
オブジェクト ファイル名 既定のオブジェクト ファイル名をオーバーライドする名前を指定します。 ファイル名またはディレクトリ名を指定できます。 (-o [名前])。
警告レベル コード エラーに対するコンパイラの厳密度を選択します。 他のフラグは [追加オプション] に直接追加する必要があります。 (/w、/Weverything)。 すべての警告を非表示にする - すべてのコンパイラ警告を無効にします。
警告をすべて有効にする - 既定で無効にされている警告を含む、すべての警告を有効にします。
警告をエラーとして扱う コンパイラ警告をすべてエラーとして扱います。 新しいプロジェクトの場合、すべてのコンパイルで /Werror を使用することをお勧めします。 すべての警告を解決することで、コードの欠陥を見逃す可能性が低くなります。
C の追加の警告 追加の警告メッセージのセットを定義します。
C++ の追加の警告 追加の警告メッセージのセットを定義します。
詳細モードを有効にする 詳細モードを有効にすると、ビルドの診断用に詳細な情報を出力します。
C コンパイラ C ソース ファイルのコンパイル中に起動するプログラムか、またはリモート システム上の C コンパイラへのパスを指定します。
C++ コンパイラ C++ ソース ファイルのコンパイル中に起動するプログラムか、またはリモート システム上の C++ コンパイラへのパスを指定します。
コンパイルのタイムアウト リモート コンパイルのタイムアウト (ミリ秒)。
オブジェクト ファイルのコピー リモート システムからローカル コンピューターにコンパイルされたオブジェクト ファイルをコピーするかどうかを指定します。
最大同時コンパイル ジョブ コンパイル中に並列で作成するプロセスの数。 既定値は 1 です。 Linux 用 Windows サブシステム (WSL) バージョン 1 の場合、上限は 64 です。
アーキテクチャの検証 プロジェクトで対象とするプラットフォームがリモート システムに一致するかどうかを確認するかどうかを指定します。
アドレス サニタイザーを有効にする アドレス サニタイザーでプログラムをコンパイルします。これは高速のメモリ エラー検出機能であり、解放後使用など、ランタイム メモリの問題を見つけたり、範囲外チェックを実行したりできます。

最適化

プロパティ 説明 選択
最適化 アプリケーションの最適化レベルを指定します。 カスタム - カスタムの最適化。
無効 - 最適化を無効にします。
サイズの最小化 - サイズを最適化します。
実行速度の最大化 - 速度を最適化します。
最大限の最適化 - 高価な最適化。
厳密なエイリアス 厳密なエイリアスのルールを想定します。 ある型のオブジェクトが別の型のオブジェクトと同じアドレスに存在することは決してないと想定します。
ループのアンロール コードのサイズは大きくなりますが、実行されるブランチの数を減らすことにより、ループをアンロールしてアプリケーションの実行速度を上げます。
リンク時の最適化 オプティマイザーがアプリケーション内の全オブジェクト ファイルを考慮に入れられるようにすることにより、プロシージャ間最適化を有効にします。
フレーム ポインターを省略する 呼び出し履歴にフレーム ポインターが作成されなくなります。
共通ブロックなし 初期化されていないグローバル変数さえ、共通ブロックとして生成しないでオブジェクト ファイルのデータ セクションに割り当てます。

プリプロセッサ

プロパティ 説明
プリプロセッサの定義 ソース ファイルの前処理シンボルを定義します。 (-D)
指定したプリプロセッサ定義の無効化 1 つ以上のプリプロセッサ定義の無効化を指定します。 (-U [マクロ])
すべてのプリプロセッサ定義の無効化 すべてのプリプロセッサの定義済み定義を無効にします。 (-undef)
インクルード ファイルの表示 コンパイラ出力を持つインクルード ファイルのリストを生成します。 (-H)

コード生成

プロパティ 説明 選択
位置独立コード 共有ライブラリで使用する位置独立コード (PIC) を生成します。
スタティックがスレッド セーフ ローカル スタティックのスレッド セーフな初期化のために、追加のコードを生成し、C++ ABI で指定されたルーチンを使用します。 いいえ - スレッド セーフなスタティックを無効にします。
はい - スレッド セーフなスタティックを有効にします。
浮動小数点の最適化 IEEE-754 の準拠を緩和して、浮動小数点の最適化を有効にします。
インライン メソッドの非表示 有効にすると、インライン メソッドの外部のコピーが private extern として宣言されます。
既定でシンボルを非表示にする __attribute マクロを使用してエクスポートするように明示的にマークされていない限り、すべてのシンボルが private extern として宣言されます。
C++ の例外を有効にする コンパイラで使用する例外処理のモデルを指定します。 いいえ - 例外処理を無効にします。
はい - 例外処理を有効にします。

Language

プロパティ 説明 選択
ランタイム型情報を有効にする 実行時に C++ のオブジェクト型をチェックするコードを追加します (ランタイム型情報)。 (frtti、fno-rtti)
C 言語標準 C 言語標準を決定します。 default
C89 - C89 言語標準。
C99 - C99 言語標準。
C11 - C11 言語標準。
C99 (GNU 言語) - C99 (GNU 言語) 言語標準。
C11 (GNU 言語) - C11 (GNU 言語) 言語標準。
C++ 言語標準 C++ 言語標準を決定します。 [Default]
C++03 - C++03 言語標準。
C++11 - C++11 言語標準。
C++14 - C++14 言語標準。
C++03 (GNU 言語) - C++03 (GNU 言語) 言語標準。
C++11 (GNU 言語) - C++11 (GNU 言語) 言語標準。
C++14 (GNU 言語) - C++14 (GNU 言語) 言語標準。

詳細設定

プロパティ 説明 選択
コンパイル言語の選択 .c および .cpp ファイルのコンパイル言語オプションを選択します。 (-x c、-x c++) 既定 - .c または .cpp 拡張に基づいて検出します。
C コードとしてコンパイル - C コードとしてコンパイルします。
C++ コードとしてコンパイル - C++ コードとしてコンパイルします。
必ず使用されるインクルード ファイル 1 つ以上の必ず使用されるインクルード ファイル。(-include [名前])