• Imagix 4D ユーザガイド
  • 目次

ステップ 2 - ダイアログ・ベースの解析方法(C / C++)

ソースコードおよび、その解析方法の指定における最も汎用的な方法は、ダイアログ・ベースの解析方法となります。この方法ではダイアログでの入力が必要となり、次の項目を指定します。

  • ソースファイルの格納先ディレクトリ
  • ソースファイルの名前(*.c 形式の展開を使用)
  • 使用する -I、-D、-U プリプロセッサ・オプション

2a. 追加する新しいデータソースの指定

[データソース] ダイアログ([プロジェクト] > [データソース])を開きます。既存のデータソースの設定を修正するのではなく、プロジェクトに対する新しいデータソースの追加を指定するにはダイアログの左側、[データソース] セレクタの下にある [データソースを追加] を選択してください。これは新しいプロジェクトであり、修正可能な既存のデータソースが存在しないため、他に選択できるオプションはありません。

2b. ダイアログ・ベースの解析方法の選択

これ以降のステップ2での作業は、[データソース] ダイアログの右側を使用して行います。上部にある [データソースの種類を選択] というラベルのメニューボタンから [ソースファイル] > [ダイアログベース(C/C++)] を選択します。

2c. 解析対象のソースファイルの指定

[ソースファイル] タブの [ディレクトリ] フィールドに、ソースコードの格納先ディレクトリを入力します。

注: ソースコードが複数のディレクトリに格納されている場合には、[ディレクトリ] フィールドの直下にある [サブディレクトリ内のソースファイルを解析] を利用する方法があります。解析対象のコードが、あるディレクトリとその配下のサブディレクトリ(さらにその配下のサブディレクトリ)に展開している際には、前述の [ディレクトリ] フィールドに最上位のディレクトリ名を入力してください。逆に、特定のサブディレクトリを除外する場合は、該当のサブディレクトリを [除外] ダイアログで指定します。また、ディレクトリ構造におけるソースコードの分布の程度により、解析対象のコードが格納されているディレクトリごとに、ステップ 2 を繰り返す必要が生じることがあります。

[ソースファイル] フィールドに、ソースファイルの名前を入力します。アスタリスク(*)を含むパターンで指定すると、対象範囲が拡張されます。例えば「*.c」と指定すると、そのディレクトリにある、あらゆる .c ファイルが一覧表示されます。複数の名前やパターンを「*.c *.cpp」のようにスペースで区切って入力することも可能です。また、.h ファイルを指定する必要はありません。アナライザは、指定の .c または .cpp ファイルの内、どれか 1 つのファイルがインクルードする .h ファイルを、もれなく自動的に解析するためです。しかし条件として、ステップ 2f で指定するインクルード・ディレクトリの1つに、該当の.c または .cpp ファイルが存在しなければなりません。

2d. ソースコードの解析に使用する -D および -U オプションの指定

引き続き [ソースファイル] タブの [PPフラグ] フィールドに、適宜「 -Dmacroname -Umacroname 」を入力します。-D ならびに -U オプションは、必要な数だけ入力することができます。-D もしくは -U と、その直後に続く名前の間を、スペースで区切らないでください。スペースは、名前と次に続く -D あるいは -U との間に入力します。

-D と -U オプションは、それぞれマクロを定義済み、あるいは未定義にします。マクロ名に対するマクロ置換の値を定義する場合には、-Dmacroname=value のように指定します。この際に等号(=)の前後にはスペースを入力しないでください。

2e. コンパイラ設定ファイルの選択

[コンパイラおよびターゲット] コンボ・ボックスにおいて、ステップ1でセットアップしたコンパイラ設定ファイルを選択します。ソフトウェアのコンパイラおよびターゲット・プラットフォーム用のコンパイラ設定ファイルを作成していない場合は、ここでその作業を行うことを強くお薦めします。またこの他に、前述のコンボ・ボックスで [other] を選択することが可能です。[other] を選択する際には、[PPフラグ] フィールドに暗黙的なオプションを指定する必要があります(ステップ 2d を参照)。

2f. インクルードするヘッダファイルの格納先の指定

ステップ 2c の説明の通り、通常、ヘッダファイルを解析するよう、明示的に Imagix 4D に指示を与える必要はありません。その代わりに、ソースコードの #include 文を使用して、インクルードするヘッダファイルの検索先となる、インクルード・ディレクトリを指定します。これは [インクルードディレクトリ] タブで設定します。

[インクルードディレクトリ] タブには、これらのディレクトリを指定する方法が、2通り用意されています。いずれかの方法を使用するか、もしくは両方同時に使用することも可能です。ヘッダファイルが、ある1つのディレクトリとその配下のサブディレクトリ(さらにその配下のサブディレクトリ)に展開している場合には、タブにある [インクルードディレクトリをルートディレクトリによって指定する] を使用する方法があります。最上位のインクルード・ディレクトリの名前を [ディレクトリ] フィールドに入力し、適宜、[サブディレクトリでヘッダファイルを検索] および [除外] ダイアログの項目をすべて入力してください。

ヘッダファイルが、分散したインクルード・ディレクトリに展開されている場合、あるいはインクルード・ディレクトリが検索される順序を制御したい場合は、[インクルードディレクトリを個別に指定] フィールドで、必要に応じて 「-Idirname1 -Idirname2」のように入力します。-I は必要な数だけ入力することができます。-I とディレクトリ名との間を、スペースで区切らないでください。ディレクトリ名とそのあとに来る -I との間に、スペースを入力します。Windows の環境では、ディレクトリ名にスペースが含まれる場合、"-Ic:/program files/msvc/include" のように、-Idirname の部分をダブルクォーテーション(")で囲みます。

-I オプションを使用し、アナライザにインクルード・ファイルの検索先となるディレクトリを指定します。インクルード・ファイルは、記述された順序で検索されます。パス名は、[ソースファイル] タブの [ディレクトリ] フィールドに相対しており、「-I../parallel/example」のように記述することが可能です。

2g. 解析プロセスの開始

以上により、アナライザを起動する用意が整いました。しかしながら、コードの解析を試みると設定、特にインクルード・ディレクトリと -D オプションの指定方法に、よく記述ミスが存在します。このため、まず、コードの一部のみをロードすることを推奨します。この方法を実施する場合は、[ソースファイル] タブにある [ファイル] フィールドに、最初に解析する特定のファイルを1つだけ指定してください。

コードを解析する準備が整ったところで、ダイアログの [データソースを追加] ボタンをクリックします。