インテル® C++ コンパイラー XE 13.1 ユーザー・リファレンス・ガイド

スタティック解析の使用

Microsoft* Visual Studio* IDE でのスタティック解析の使用

Microsoft* Visual Studio* でスタティック解析用にアプリケーションをビルドするには、[Build for Intel Static Analysis (インテル・スタティック解析用にビルド)] メニューオプションを使用します。 このオプションは、Visual Studio* IDE でスタティック解析用に新しいビルド構成を作成し、必要なプロパティーを設定します。

[Build for Intel Static Analysis (インテル・スタティック解析用にビルド)] メニューオプションには複数のメニュー項目があります。

これらのメニュー項目は、プロジェクトやソリューションをビルドできるすべてのメニューに表示されます。これには、[Build (ビルド)] メニュー、選択されたプロジェクトやソリューションで右クリックすると表示されるポップアップ・メニューも含まれます。

このメニューオプションを初めて使用する場合、ダイアログボックスが表示され、セットアップの手順が示されます。

インテル® C++ ソリューション用のスタティック解析の使用

インテル® C++ ソリューションおよびプロジェクトでスタティック解析を実行するには、次の操作を行います。

  1. [Build for Intel Static Analysis (インテル・スタティック解析用にビルド)] を選択します。
  2. [Create configuration (構成を作成)] ダイアログボックスで次のいずれかを選択します。
    • [Copy configuration settings from (構成設定のコピー元)]: コピーする構成設定元を指定します。
    • [Level of Static Analysis (スタティック解析のレベル)]: 解析のレベルを選択します。
    • [Additional Options(追加のオプション)]: システム・インクルード・ファイルを解析する場合は、[Analyze Included Files (インクルード・ファイルの解析)] を選択します。
  3. [Build for Static Analysis after creating configuration (構成を作成後にスタティック解析用にビルド)] チェックボックスはオンのままにします。 「Intel_SSA」という新しい構成が作成され、スタティック解析用に選択されたプロジェクトがビルドされます。(このチェックボックスをオフにすると、スタティック解析の設定だけ行われ、ビルドは行われません。)

解析結果は、自動的にインテル® Inspector XE ユーザー・インターフェイスで開きます。

Visual C++* ソリューションまたは混在ソリューション用のスタティック解析の使用

Visual C++* のみのソリューションとプロジェクト、あるいはインテル® C++ と Visual C++* プロジェクトの両方が含まれる混在ソリューションでスタティック解析を実行するには、次の操作を行います。

  1. [Build for Intel Static Analysis (インテル・スタティック解析用にビルド)] を選択します。
  2. Visual Studio* 2008 の場合: [Prepare Projects (プロジェクトの準備)] ダイアログボックスでプロジェクトをチェックしたり、チェックを外してください。 このダイアログボックスにはソリューションのすべての Visual C++* プロジェクトが表示されます。初期状態では、すべての Visual C++* プロジェクトがスタティック解析用に選択されているので、スタティック解析が不要なプロジェクトのチェックを外してください。[次へ] をクリックします。

    既存の構成は変更されません。[Solution Explorer (ソリューション エクスプローラ)] には別のアイコンが表示され、プロジェクト構成がインテル® コンパイラーによってビルドされることが示されます。

  3. [Create configuration (構成を作成)] ダイアログボックスで次のいずれかを選択します。
    • [Copy configuration settings from (構成設定のコピー元)]: コピーする構成設定元を指定します。
    • [Level of Static Analysis (スタティック解析のレベル)]: 解析のレベルを選択します。
    • [Additional Options(追加のオプション)]: システム・インクルード・ファイルを解析する場合は、[Analyze Included Files (インクルード・ファイルの解析)] を選択します。
  4. [Build for Static Analysis after creating configuration (構成を作成後にスタティック解析用にビルド)] チェックボックスはオンのままにします。 「Intel_SSA」という新しい構成が作成され、スタティック解析用に選択されたプロジェクトがビルドされます。(このチェックボックスをオフにすると、スタティック解析の設定だけ行われ、ビルドは行われません。)
  5. 解析結果は、自動的にインテル® Inspector XE ユーザー・インターフェイスで開きます。

Visual C++* プロジェクトをスタティック解析用に準備しても、既存の構成がインテル® コンパイラーによってビルドされるわけではありません。ただし、ソリューション (.sln) ファイルは変更され、準備された各プロジェクト用にインテル・プロジェクト (.icproj) ファイルが追加されます。これらの変更後、ソリューションは、インテル® コンパイラーがインストールされていないシステムではビルドできなくなります。開発チームの一部のメンバーがインテル® コンパイラーをインストールしていないような環境では、このような変更は一時的なものとして、スタティック解析の実行後は破棄すると良いでしょう。必要に応じて、いつでもこのスタティック解析用の設定を再度行うことができます。

スタティック解析に関連する Microsoft* Visual Studio* IDE のプロパティー・ページはいくつかあります。Intel_SSA 構成のプロパティーを変更することで、スタティック解析のオプションを変更できます。これを行うには、次のプロパティー・ページを使用します。

Eclipse* IDE からのスタティック解析の使用

Eclipse* IDE:

  1. プロジェクトのプロパティー・ページを開いて、[C/C++ Build (C/C++ ビルド)] を選択します。

  2. [Manage… (管理…)] ボタンをクリックします。

  3. [Manage (管理)] ダイアログボックスで、[New…(新規)] ボタンをクリックして、[Create configuration (構成を作成)] ダイアログボックスを開きます。

  4. [Name (名前)] ボックスで、新しい構成の名前を指定します (例: Intel_SSA)。

  5. 必要に応じて、[Description (記述)] に構成の説明を入力します。

  6. [Copy settings from (設定のコピー元)]、[Existing configuration (既存構成)] を選択し、適切なラジオボタンをクリックして、対応するドロップダウン・メニューからデバッグ構成を選択します。

  7. [OK] をクリックして [Create configuration (構成を作成)] ダイアログを閉じます。

  8. [OK] をクリックして (新しい構成名が選択されている) [Manage (管理)] ダイアログを閉じます。

  9. コンパイラーの [Compilation Diagnostics (コンパイル診断)] を表示します。

  10. [Level of Static Analysis (スタティック解析のレベル)][Analyze Included Files (インクルード・ファイルの解析)] プロパティーを使用して、スタティック解析を有効にします。

コマンドラインからのスタティック解析の使用

コマンドラインからビルドを行う場合は、新しいビルド構成を作成するか、または既存のビルド構成やターゲットとは異なるターゲットを作成する必要があります。いったんこれを行ったら、コマンドライン・オプションを追加して、スタティック解析を有効にできます。各コンパイルとリンク段階でスタティック解析を要求するオプションを指定する必要があります。次の表は、スタティック解析オプションをまとめたものです。各オプションに関する詳細は、「コンパイラー・オプション」を参照してください。

オプション (Windows* および Linux* 構文)

結果

/Qdiag-enable:sc{[1|2|3]}

-diag-enable sc{[1|2|3]}

スタティック解析を有効にします。数字は、レポートする診断レベル (1= クリティカル・エラーのみ、2=すべてのエラーと警告、および 3=重要度に関係なくすべての診断) を指定します。

/Qdiag-enable:sc-{full|concise|precise}

-diag-enable sc-{full|concise|precise}

スタティック解析を有効にし、解析モードを決定します。

/Qdiag-disable:sc

-diag-disable sc

スタティック解析を無効にします。

/Qdiag-enable:sc-include

-diag-enable sc-include

システム・インクルード・ファイルとソースファイルを解析します。デフォルトでは、システム・インクルード・ファイルの明らかなエラーはレポートされません。

システム・インクルード・ファイルは、INCLUDE 環境変数で指定されたインクルード・ファイルです。

/Qdiag-enable:sc-single-file

-diag-enable sc-single-file

各ファイルを個別に処理し、通常のプログラム全体の解析は行いません。大規模なプログラムでメモリーの使用と解析時間を抑えることができますが、検出される実際のエラーは少なくなります。

/Qdiag-sc-dir:dir

-diag-sc-dir dir

診断結果を指定されたディレクトリーに配置します。このオプションが指定されていない場合やディレクトリーが指定されずにオプションが指定された場合は、結果は現在の作業ディレクトリーに配置されます。各実行で "r@@@sc" という形式の名前の新しいサブディレクトリーに結果が作成されます。"@@@" は次に利用可能な番号 (001、002、...) に置き換えられます。

このオプションでは、コンパイラー・オプションも指定してスタティック解析を有効にする必要があります。

/Qdiag-enable:sc-enums

-diag-enable sc-enums

列挙型の変数を、関連する列挙リテラルと等しい既知の値として扱うようにスタティック解析に指示します。デフォルトでは、スタティック解析は不明な列挙型の変数を不明な整数値として扱います。このオプションを有効にすると、より多くのエラーが検出されますが、誤検出の可能性が高まります。

Windows*: プロジェクトをコマンドラインでビルドしなければならない場合でも、プロジェクトを Visual Studio* に統合することが可能です。これを行うには、Visual Studio で "makefile プロジェクト" を作成します。この場合、Visual Studio は選択したコマンドラインを起動してプロジェクトをビルドします。makefile プロジェクトを使用する場合は、/Qdiag-sc-dir:dir オプションまたは -diag-sc-dir dir オプションをリンク段階に追加して、出力ファイルをプロジェクト・ルート・ディレクトリーの "My Inspector XE Results-<product name>" フォルダーに配置します。 これにより、インテル® Inspector XE は、解析結果を認識し、Visual Studio の [ソリューション エクスプローラ] に表示します。Visual Studio を使わない場合には、インテル® Inspector XE GUI のスタンドアロン形式を使用します。この場合、解析結果はどこに配置しても構いません。

OpenMP* を有効にするには、/Qopenmp (Windows*) オプションまたは -openmp (Linux*) オプションを指定します。 プログラムで OpenMP* を使用している場合はこのオプションは必須です。

スタティック解析使用時の注意事項


このヘルプトピックについてのフィードバックを送信