EN JP CN

Electric Cloud での分散 Klocwork 解析の実行

Electric Cloud での分散 Klocwork 解析の実行

Electric Cloud で分散 Klocwork 解析を実行するには、ビルドディレクトリから kwecbuild を実行します。

kwecbuild --ec-make <path_to_emake> [<other_options>] <build_specification_file>

フィールド

  • <path_to_emake> は、Electric Cloud emake ユーティリティへのパスです。
  • <other_options> はいずれかの kwecbuild オプションです
  • <build_specification_file> は、kwinject により作成された build specification (ビルドスペック) ファイルです。

重要:

  • kwecbuild は、Electric Cloud 統合ビルドと同じディレクトリから実行する必要があります。
  • kwecbuild の出力 (テーブル) ディレクトリが、現在の作業ディレクトリの下に配置されている必要があります。

kwecbuild --ec-make /opt/ecloud/i686_Linux/bin/emake --ec-host server01 --output-dir tables kwinject.out

このサンプルコマンドは、Klocwork テーブルを、現在の作業ディレクトリのテーブルサブディレクトリに出力します。

kwecbuild が Klocwork 解析段階を実行する場所

  • コンパイル段階は、Electric Cloud 環境に統合されています。生成された make ファイルは、<output_tables_directory>/makefile 内に配置されます。
  • 指摘検出段階は、Electric Cloud 環境に統合されています。生成された make ファイルは、<output_tables_directory>/clef/ecMakefile 内に配置されます。
  • リンクおよびレポート段階はローカルに実行されます。

制限事項

  • 完全解析のみサポートされます。増分解析はサポートされていません。kwecbuild を使用して解析を再開することはできません。
  • マルチバイト文字 (日本語など) は kwecbuild ではサポートされていません。

次の例では、オープンソースプロジェクトリードラインを使用します。

<Server_install>/bin ディレクトリが $PATH に追加されました。

現在の作業ディレクトリは /space/source/x86-32/c/readline/5.2 です。

Electric Cloud の build specification (ビルドスペック) の生成

まず、後で統合ビルド解析の基礎として使用される、build specification (ビルドスペック) を生成する必要があります。

  1. emake を実行して注釈ファイルを生成します。
    /opt/ecloud/i686_Linux/bin/emake --emake-cm=localhost --emake-annodetail=basic --emake-annofile=emake.xml
    
    このコマンドは、emake クラスターマネージャーをローカルホスト上に配置するように指定し、emake.xml という注釈ファイルを作成します。
  2. kwlogparserを実行して、注釈ファイルを build trace (ビルドトレース) に変換します。
    kwlogparser --output emake.trace emake-annotation emake.xml
    
    このコマンドは、emake.xml を、emake.trace という build trace (ビルドトレース) に変換します。
  3. kwinject を使用して build trace (ビルドトレース) を build specification (ビルドスペック) に変換します。
    kwinject —-trace-in emake.trace
    
    このコマンドは、emake.trace から build specification (ビルドスペック) を生成します。build specification (ビルドスペック) のデフォルトの出力ファイル名には kwinject.out が使用されます。

kwecbuild を使用した分散解析の実行

これで、build specification (ビルドスペック) を使用して分散解析を実行できるようになりました。

  1. 現在の作業ディレクトリが Electric Cloud 統合ビルドと同じディレクトリであることを確認します。
    /space/source/x86-32/c/readline/5.2
  2. Electric Cloud で、build specification (ビルドスペック) を入力として使用して分散 Klocwork 解析を実行します。
    kwecbuild --force --license-host flex1 --ec-make /opt/ecloud/i686_Linux/bin/emake --ec-host localhost --output-dir tables kwinject.out
    このコマンドは、build specification (ビルドスペック) kwinject.out に対して分散解析を実行します。必要に応じ、kwecbuild の出力ディレクトリが現在の作業ディレクトリ内にあることを確認してください。--force オプションを使用すると、前回の解析のデータを上書きできます。
  3. Klocwork サーバーが次の 2 つのステップの実行前に動作していることを確認します。Klocwork サーバーの起動を参照してください。
  4. Klocwork プロジェクトを作成します。
    kwadmin create-project readline52
    このコマンドは、readline52 というプロジェクトを作成します。
  5. 解析結果をデータベースにロードします。
    kwadmin load readline52 tables
    このコマンドは、テーブルディレクトリのデータを Klocwork データベースにロードします。