ソースコード構造解析ツール『Understand』は、大規模で複雑なプログラムを素早く解析するための多彩な機能を搭載しています。 アーキテクチャから個々のクラスや関数まで、あらゆるレベルでソースコードを解析し、プログラムの制御フローや構造、クラス継承、関数や変数の関係など、さまざまな角度から見える化します。

車載ソリューションの記事紹介

テクマトリックスでは車載ソフトウェア開発向けのソリューションを提案しています。
ツールチェーンとしてUnderstandが含まれていますので、ご関心のある方は「こちらの記事」をご覧ください。

2020/06/26

Understand 5.1 バージョンアップ版の新機能・改善点 - プロジェクト作成ウィザードの刷新

Understand 5.1 バージョンアップ版では、新規プロジェクト ウィザードが刷新されました。

また、C/C++ のプロジェクト作成時に、ビルドプロセスを監視し、インクルードパスやマクロ定義など、ビルドプロセス時にコンパイラに渡される情報を取得し、プロジェクトが作成できるようになりました。
  • 対応コンパイラ : GCC, Clang
  • 対応makeコマンド : nmake, ninjaなど
    ※Cygwin環境はサポートされていません。


Understand 5.1 (Build 1022) 以降で、新規プロジェクトウィザードによるプロジェクトの作成方法には、以下の4つの方法があります。
  1. C/C++のビルドプロセスを監視し、プロジェクトを作成する
  2. CMake のコンパイルデータベースファイルを使用して、プロジェクトを作成する
  3. Visual Studio ソリューション・プロジェクトファイルをインポートして、プロジェクトを作成する
  4. 解析対象のディレクトリやファイルを指定して、プロジェクトを作成する


1. C/C++のビルドプロセスを監視し、プロジェクトを作成する

  1. Understand 起動時に表示される[はじめに]タブの[新規プロジェクト]リンクをクリックします。 または、メインメニュー[ファイル]-[新規]-[プロジェクト]をクリックします。
  2. 「ディレクトリの追加」ボタンをクリックし、ビルドファイルの実行ディレクトリを選択します。「続行」ボタンをクリックします。
  3. [プロジェクトビルドの監視]画面の「C/C++プロジェクトのビルドを監視します」ボタンをクリックします。
  4. [プロジェクトビルドの監視]画面の「続行します」ボタンをクリックします。
  5. [プロジェクトビルドの監視]画面で、[監視しています。ビルドを開始してください]のメッセージが表示されます。Understand画面はこの状態のままにします。
  6. コマンドプロンプトなどで、ビルドを開始します。
  7. 例)nmakeコマンドを実行
  8. ビルドが正常に終了し、オブジェクトファイルや実行ファイルの生成が完了すると、[プロジェクトビルドの監視]画面のプロジェクトファイルにファイル一覧が表示されます。「終了」ボタンをクリックします。
  9. 「C++解析をStrictとFuzzyのどちらで解析しますか?」の画面が表示されます。プロジェクトのビルド監視を実行した場合、Strict解析が選択された状態で初期表示されます。「続行します」ボタンをクリックします。
  10. [プロジェクトビルドの監視]画面の「ビルドが完了したので監視を終了します」ボタンをクリックします。
  11. [プロジェクトビルドの監視]画面のファイル一覧で表示された解析対象のファイルが表示されます。
  12. 該当するコンパイラをドロップダウンメニューで選択します。
    ※プロジェクトのビルド監視の対応コンパイラは、「GCC, Clang」です。
    一覧から選択可能なコンパイラであっても、プロジェクトのビルド監視に対応していません。

  13. 「プロジェクトの作成」ボタンをクリックすると、解析が実行されます。ビルドファイルに設定済みのインクルードパスやマクロ定義などが取り込まれた状態でプロジェクトが作成されます。


2. CMake のコンパイルデータベースファイルを使用して、プロジェクトを作成する


解析対象のディレクトリに、CMakeのコンパイルデータベースファイル (compile_commands.json) が含まれる場合には、自動で検出し、それらのファイルをインポートすることで簡単にプロジェクトを作成できるようになりました。
  1. Understand起動時に表示される[はじめに]タブの[新規プロジェクト]リンクをクリックします。 または、メインメニュー[ファイル]-[新規]-[プロジェクト] をクリックします。
  2. CMakeの解析対象ファイルを含むディレクトリを選択します。
    「続行」ボタンをクリックします。
  3. CMakeコンパイルデータベースファイルが該当ディレクトリに存在しない場合、ファイルを指定するための画面が表示されます。「ファイルの追加」ボタンをクリックし、CMakeコンパイルデータベースファイル (compile_commands.json) を指定します。

  4. 「プロジェクトの作成」ボタンをクリックすると、解析が実行されます。ビルドファイルに設定済みのインクルードパスやマクロ定義などが取り込まれた状態でプロジェクトが作成されます。


3. Visual Studio ソリューション・プロジェクトファイルをインポートして、プロジェクトを作成する


解析対象のディレクトリに、Visual Studioプロジェクトファイルやソリューションファイルが含まれる場合には、自動で検出し、それらのファイルをインポートすることで簡単にプロジェクトを作成できるようになりました。
  1. Understand起動時に表示される[はじめに]タブの[新規プロジェクト]リンクをクリックします。 または、メインメニュー[ファイル]-[新規]-[プロジェクト] をクリックします。
  2. Visual Studioプロジェクトの解析対象ディレクトリを選択します。「続行」ボタンをクリックします。
  3. Visual Studioソリューションファイルやプロジェクトファイルが存在する場合、自動でそれらのファイルを検出します。 インポートするVisual Studioファイルの「インポート」ボタンをクリックします。
  4. Visual Studioソリューションファイルやプロジェクトファイルに設定済みのファイル一覧が表示されます。
    「続行」ボタンをクリックします。
  5. 「プロジェクトの作成」ボタンをクリックすると、解析が実行されます。 Visual Studioソリューションファイルやプロジェクトファイルに設定済みのインクルードパスやマクロ定義などが取り込まれた状態でプロジェクトが作成されます。


4. 解析対象のディレクトリやファイルを指定して、プロジェクトを作成する


従来のバージョンと同様に、コンパイル環境が存在しない場合などは、解析対象のディレクトリやファイルを指定し、簡単にプロジェクトを作成することも可能です。
  1. Understand 起動時に表示される[はじめに]タブの[新規プロジェクト]リンクをクリックします。 または、メインメニュー[ファイル]-[新規]-[プロジェクト] をクリックします。
  2. 「ディレクトリの追加」ボタンをクリックし、解析対象のファイルが含まれるディレクトリを選択します。
    「続行」ボタンをクリックします。
  3. [プロジェクトビルドの監視]画面の「コンパイルしない場合や手動でプロジェクトを作成します」ボタンをクリックします。
  4. 「C++解析をStrictとFuzzyのどちらで解析しますか?」の画面が表示されます。Fuzzy解析が選択された状態で初期表示されます。
    「続行します」ボタンをクリックします。
  5. 解析対象のファイルが抽出された状態で表示されます。
    該当するコンパイラをドロップダウンメニューで、コンパイラや解析バージョンを選択します。
    ※「プロジェクト作成後に詳細設定を構成します」のチェックボックスをオンにします。
  6. [プロジェクトの設定]ダイアログが開きます。言語や解析するファイルなどを必要に応じて、手動で設定変更します。
  7. 「OK」ボタンをクリックすると、解析が実行されプロジェクトが作成されます。


バージョンアップ版では、解析対象のディレクトリにプロジェクトファイルが存在する場合には自動で検出するなど、 新規プロジェクトが作成しやすくなっています。是非、ご利用ください。