2. ビルドの基本
2.9 ファイル依存関係
多くの場合プロジェクトにはファイル間の依存関係があります。例えば、1つのCファイルはいくつかのファイ ルをインクルードします。複雑なプロジェクトでは、ソースファイルが他のインクルードファイルに依存する ため、管理が難しくなります。しかし、High-performance Embedded Workshopにはファイル依存関係をスキャ ンする機能があり、そのプロジェクトにあるすべてのファイルの依存関係をチェックできます。スキャンが完 了すると、プロジェクトのファイル依存関係を示す最新のリストをワークスペースウィンドウの[Projects]タブ に表示します。
最初に、すべての依存ファイルは[Dependencies]フォルダに表示されています。
注:
インクルードファイルからさらにファイルがインクルードされている場合、依存ファイルとして表示するイン クルードファイルのネストレベルは31までです。
プロジェクトのファイル依存関係は、以下の操作タイミングで自動更新されます。
操作タイミング 主な操作
[ようこそ!]ダイアログボックスのオプションの選択 [ファイル -> ワークスペースを開く]の選択 ワークスペースを開く
[ファイル -> 新規ワークスペースの作成]の選択 ワークスペースにプロジェクトを挿入する [プロジェクト -> プロジェクトの挿入]の選択
アクティブプロジェクトに設定する [プロジェクト -> アクティブプロジェクトに設定]の選択 ファイルを追加する [プロジェクト -> ファイルの追加]の選択
ファイルを保存する [ファイル -> 上書き保存]の選択 ビルドする [ビルド -> ビルド]の選択
依存関係を自動更新する [依存関係の自動更新をしない]チェックボックスをオフにする
High-performance Embedded Workshop V.4.09 2. ビルドの基本
プロジェクトのファイル依存関係を自動更新しないようにするには
1. [基本設定 -> オプション]を選択してください。[オプション]ダイアログボックスが開きます。
2. [ビルド]タブを選択します。
3. [依存関係の自動更新をしない]チェックボックスをオンにしてください。このチェックボックスのデ フォルトはオフです。
4. OKをクリックしてください。
注:
この設定を行うと、プロジェクトのファイル依存関係はすべてクリアされます。プロジェクトのファ イル依存関係を手動で更新するには、「プロジェクトのファイル依存関係を手動で更新するには」を 参照してください。
また、[ビルド -> ビルド]を選択した場合、ビルド前に依存関係を更新するかを確認するダイアログボックス
が開きます。
依存関係の自動更新機能を抑止しているため、ファイル依存関係の情報が古い可能性があります。
ビルド前に依存関係を更新する場合は、「はい」を選択してください。「いいえ」を選択した場合、現在の依 存関係の情報でビルドを実行します。
確認要求ダイアログボックスを表示しない場合、[今後表示しない]チェックボックスをオンにしてください。
High-performance Embedded Workshop V.4.09 2. ビルドの基本
確認要求ダイアログボックスを再び表示するには
1. [基本設定 -> オプション]を選択してください。[オプション]ダイアログボックスが開きます。
2. [確認]タブを選択してください。
3. [ビルド前に依存関係を更新]チェックボックスをオンにしてください。このチェックボックスのデフ ォルトはオンです。
4. OKをクリックしてください。
プロジェクトのファイル依存関係を手動で更新するには 以下のいずれかの操作を選択してください。
• [ビルド -> すべての依存関係を更新]を選択する。
• ワークスペースウィンドウの[Projects]タブのプロジェクト上で右クリックし、ポップアップメニュー
から[ビルド -> すべての依存関係を更新]を選択する。
2.10 表示方法を指定する
ワークスペースウィンドウの[Projects]タブの中で右クリックすると、ポップアップメニューを表示します。そ の中から[表示の構成]を選択し、以下の情報の表示方法を設定してください。以下に[表示の構成]ダイアログ ボックスの各オプションについて説明します。
各ファイルの下に依存ファイルを表示する
[依存関係をファイルの下に表示]チェックボックスをオンにすると、依存ファイルがそれをインクルードする ソースファイルの下に平坦な構造で表示され、ファイル自体がフォルダになります(図(ii)を参照)。このオプ ションを選択しないと[Dependencies]フォルダにすべてのファイル依存を示します(図(i)を参照)。
High-performance Embedded Workshop V.4.09 2. ビルドの基本
標準ライブラリファイルのインクルードを表示する
デフォルトでは、標準インクルードパスの依存ファイルは表示しません(図(j)を参照)。例えば、Cコードで
#include <stdio.h>などのインクルード文を書くと、stdio.hは依存ファイルとして表示しません。そのようなシス
テムインクルードファイルを表示するには、[インクルードする標準ライブラリの表示]チェックボックスをオ ンにしてください(図(jj)を参照)。
ファイルのパスを表示する
デフォルトでは、ファイルのパスは表示されません(図(k)を参照)。[ファイルパスの表示]チェックボックス をオンにすると、[Projects]タブのすべてのファイルを絶対パス(ドライブ名からのパス)で表示します(図(kk) を参照)。
ファイルをタイムスタンプの順序でソートする
[ファイルのタイムスタンプによるソート]チェックボックスをオンにすると、ワークスペース内のファイルを タイムスタンプの順序で並べることができます。最新のファイルがリストの先頭、最も古いファイルがリスト の最後になります。
High-performance Embedded Workshop V.4.09 2. ビルドの基本
このオプションを設定した後でファイルを更新した場合は、手動で表示順を更新してください。
表示順を手動で更新するには
ワークスペースウィンドウの[Projects]タブのポップアップメニューから[リフレッシュ]を選択してください。
2.11 ワークスペースにプロジェクトを追加する
ワークスペースを作成したとき、最初はプロジェクトが1つしかありません。しかし、後で、新しいプロジェ クトや既存のプロジェクトを追加できます。
ワークスペースに新しいプロジェクトを追加するには
1. [プロジェクト -> プロジェクトの挿入]を選択してください。[プロジェクトの挿入]ダイアログボック スが開きます。
2. [新規プロジェクト]ラジオボタンを選択してください。
3. [OK]ボタンをクリックしてください。[新規プロジェクトの挿入]ダイアログボックスが開きます。
4. [プロジェクト名]にプロジェクト名を入力してください。プロジェクト名は32文字以内で、半角英数 字、半角下線のみ使用してください。特に、日本語文字、空白、または半角マイナス記号を使用しな いでください。プロジェクト名を入力すると、High-performance Embedded Workshopは自動的にサブデ ィレクトリを追加します。これは不要であれば削除できます。
5. [参照]ボタンをクリックしてプロジェクトを作成するディレクトリを選択してください。または、[デ ィレクトリ]にディレクトリを入力できます。
6. プロジェクトタイプリストには使用可能なプロジェクトの種類を示します(Application、Libraryなど)。
このリストから作成するプロジェクトの種類を選択してください。
7. [OK]ボタンをクリックすると、プロジェクトを作成しワークスペースに追加します。
既存のプロジェクトをワークスペースに追加するには
1. [プロジェクト -> プロジェクトの挿入]を選択してください。[プロジェクトの挿入]ダイアログボック スが開きます。
2. [既存プロジェクト]ラジオボタンを選択してください。
3. [参照]ボタンをクリックしてプロジェクトデータベースファイル(".HWP"ファイル)を検索してくだ さい。
4. [OK]ボタンをクリックするとそのプロジェクトをワークスペースに追加します。
High-performance Embedded Workshop V.4.09 2. ビルドの基本
2.12 アクティブプロジェクトを設定する
プロジェクトには3つの状態があります。アクティブプロジェクト、ロード(読み込まれた)プロジェクト、
およびアンロードプロジェクトです。
ワークスペースには複数のプロジェクトを含めることができますが、アクティブなプロジェクトは1つだけで す。このアクティブプロジェクトでビルド動作とデバッグ動作を実行します。そして、そのプロジェクト用の ビルダやデバッガのオプションを変更できます。またアクティブプロジェクトは太字で表示します。
プロジェクトをアクティブにするには 以下の操作のいずれかを選択します。
• [プロジェクト -> アクティブプロジェクトに設定]サブメニューからアクティブにしたいプロジェク トを選択してください。
• ワークスペースウィンドウの[Projects]タブからアクティブでないプロジェクトを選択してください。
右クリックしてポップアップメニューを表示し、[アクティブプロジェクトに設定]オプションを選択 してください。
プロジェクトが読み込まれていると、プロジェクトのディレクトリを開き、ファイルを見ることができます。
またプロジェクトのビルダおよびデバッグオプションを変更することもできます。読み込みプロジェクトに対 して[ツール]メニューのツールを実行することもできます。
プロジェクトをアンロードにするには
1. ワークスペースウィンドウの[Projects]タブからアクティブでないプロジェクトを選択してください。
2. 右クリックしてポップアップメニューを表示し、[プロジェクトのアンロード]を選択してください。
一度にいくつかのプロジェクトを選択することもできます。
アンロードしたプロジェクトは、ワークスペースウィンドウの[Projects]タブのアイコンがグレー表示です。
アンロードしたプロジェクトがある場合は以下の操作によりプロジェクトを読み込むことができます。
ワークスペースのすべてのプロジェクトを読み込むには
1. ワークスペースウィンドウの[Projects]タブのワークスペースを選択してください。
2. 右クリックしポップアップメニューを表示し、[全プロジェクトの読み込み]を選択してください。
ワークスペースのプロジェクトを読み込むには
1. ワークスペースウィンドウの[Projects]タブからアンロードしたプロジェクトを選択してください。
2. 右クリックしてポップアップメニューを表示し、[プロジェクトの読み込み]を選択してください。一 度にいくつかのプロジェクトを選択することもできます。
2.13 プロジェクト間の依存関係を指定する
ワークスペースのプロジェクトは、他のプロジェクトと依存関係を持たせることができます。ビルド処理をす ると、依存プロジェクトを最初にビルドします。これは、ワークスペースのプロジェクトを他のプロジェクト が使用しているときなどに使用します。例えば、ワークスペースに2つのプロジェクトがあるとします。1つは アプリケーションプロジェクトに含まれたライブラリだとします。この場合2番目のアプリケーションのビル
High-performance Embedded Workshop V.4.09 2. ビルドの基本
ド前にライブラリを正確にビルドし、また最新でなくてはなりません。そのため、ライブラリをアプリケーシ ョンプロジェクトの依存プロジェクトに指定します。こうすると、最新でないライブラリを先にビルドします。
依存プロジェクトをビルドするとき、High-performance Embedded Workshopは依存プロジェクトがアクティブ プロジェクトのビルドコンフィグレーションになるようにします。上記の例では、アクティブプロジェクトの ビルドコンフィグレーションが"Debug"であるとき、High-performance Embedded Workshopは、依存プロジェク
トで"Debug"ビルドコンフィグレーションが選択されるようにします。このような一致したコンフィグレーシ
ョンが存在しない場合、High-performance Embedded Workshopは依存プロジェクトで最近使われたコンフィグ レーションを使用します。
依存プロジェクトを指定するには
1. [プロジェクト -> 依存関係]を選択してください。[依存プロジェクト]ダイアログボックスが開きま す。
2. 依存関係を指定するプロジェクトを選択してください。[依存プロジェクト]リストに(選択したプロ ジェクト以外の)ワークスペース内のすべてのプロジェクトを表示します。
3. [依存プロジェクト]リストには各プロジェクトにチェックボックスがあります。選択したプロジェク トが依存するプロジェクトのチェックボックスをオンにしてください。
4. [OK]ボタンをクリックしてください。
アクティブプロジェクトに対し依存プロジェクトを設定している場合、ビルド時、アクティブプロジェクトよ り先に依存プロジェクトのビルドが必要かHigh-performance Embedded Workshopは判定します。
この依存プロジェクトの判定は、アクティブプロジェクトを親とした場合、子にあたるプロジェクトまで実施 します。子にあたるプロジェクトに対して依存プロジェクトを設定していても、その依存プロジェクトは判定 しません。
2.14 ワークスペースからプロジェクトを削除する
ワークスペースからプロジェクトを削除するには
1. ワークスペースウィンドウの[Projects]タブで削除したいプロジェクトを選択してください。
2. 右クリックしポップアップメニューを表示してください。
3. [プロジェクトの削除]を選択してください。
注:
ワークスペースからアクティブプロジェクトを削除することはできません。