Eclipse NiosIIのプロジェクトと相対パス

FPGA

Eclipse NiosIIのプログラム開発で、プロジェクトとは別のディレクトリに存在するソースコードをリンクする場合のメモです。

1. 新しいプロジェクトを作成する

まず、新しいアプリケーションプロジェクトを作成します。

新しいアプリケーションプロジェクトの作成

新しいアプリケーションプロジェクトの作成

.sopcinfoファイルの指定、プロジェクト名の指定、テンプレートの指定を行います。この例では、プロジェクト名はcubes、テンプレートはHello Worldを指定してます。(Finishではなく)Nextをクリックします。

プロジェクト名などの指定

プロジェクト名などの指定

BSPを作成します。既に存在する場合は新しく作り直す必要はありません。この例では、既存のBSPを選択しています。

BSPの生成

BSPの生成

Project Explorerにプロジェクトが追加されます。hello_world.cは別ディレクトリに用意したファイルに差し替えるので削除します。

hello_world.cの削除

hello_world.cの削除

2. 新しいmain関数の追加

別のディレクトリに用意したmain関数のファイルをProject Explorerのcubesプロジェクトにドラッグ&ドロップします。ファイルをコピーするかリンクするか聞かれるので、どちらかを選択してOKをクリックします。リンクを選択すると、ファイルの実体はプロジェクトにコピーされません。

ファイルの追加

ファイルの追加

次に、追加されたファイルを右クリックしてAdd to Nios II Buildを選択すると、ファイルがビルドの対象になります。

ビルド対象に指定

ビルド対象に指定

3. ライブラリファイルの追加

ミドルウェアのように、あるまとまったファイルをリンクする場合には、プロジェクトにディレクトリを作成し、そこに複数のファイルをリンクします。新しいディレクトリは、プロジェクト名の右クリック->New->Folderで作成できます。
この例では、clibというディレクトリを作成後、そこにドラッグ&ドロップで複数のファイルをリンクしています。リンク後、必要なCファイルすべてにAdd to Nios II Buildを実行してビルド対象に含めます。

ディレクトリのファイルをビルドに追加

ディレクトリのファイルをビルドに追加

この処理を必要なファイル分だけ繰り返します。

4. インクルードパスの設定

プロジェクト名を右クリック->Propertiesでプロパティのウィンドウを開きます。Nios II Application->Nios II Application Pathsに必要なディレクトリを追加します。ここでは、Cの#includeで参照されるパスをApplication include directriesに追加します。Addボタンを押すと、ディレクトリ選択のウィンドウが表示されるので、ファイルの実体が存在するディレクトリを指定します。
「Do you wish to convert the path to a relatice path」でYesを選択すると、相対パスでディレクトリが追加されます。

includeパスの追加

includeパスの追加

5. ビルドの実行

最後に、ビルドを実行して正常にELFファイルが生成されることを確認します。

タイトルとURLをコピーしました