オプションを指定せずに make コマンドを実行した時の処理の流れは以下のようになります。
-
カーネルのビルド (make linux)
Linuxのカーネルイメージの作成を行います。 -
ライブラリ、ユーザランドアプリのビルド (make subdirs)
uClibcライブラリの作成後、アプリケーションのビルドを行います。 -
romfsの作成 (make romfs)
ユーザランドを作成します。各ディレクトリの作成、アプリケーションのコピー等が行われます。 -
イメージファイルの作成 (make images)
FlashROMに書き込むイメージファイルを作成します。romfsのイメージを作成し、カーネルイメージと結合して一つのファイルにします。
例えばユーザランドのディレクトリ構成を変更したい時に、これらすべての処理を行う必要はありません。
ここでは、いくつかの例を元に目的別のビルド方法を紹介します。
カーネルを修正した場合
カーネルに修正を加えた場合は、カーネルのイメージファイルの更新後、Flashに書き込むイメージファイルを再作成します。
[PC uClinux-dist]$ make linux ; make image
ただしコンフィグ画面で項目の追加/削除等を行った場合は、依存関係が変更されるため
[PC uClinux-dist]$ make dep ; make
と実行して下さい。
アプリケーションを修正した場合
ソースツリー内のアプリケーションに修正を加えた場合、まずアプリケーションの再作成を行います。
[PC uClinux-dist]$ make user_only
ftp等で転送して一時的に利用する場合は、該当するアプリケーションのディレクトリ(user/xxx)に作成される実行ファイルを、Armadillo-Jに転送して下さい。
FlashROMに書き込むイメージに含める場合は、romfsディレクトリに作成した実行ファイルを含めてから、FlashROMに書き込むイメージファイルを作成します。
[PC uClinux-dist]$ make romfs ; make image
※アプリケーションの追加/削除を行った場合も同様の手順でよいのですが、一部アプリケーション(flatfsd等)には、他のアプリケーションとの依存関係があるため
[PC uClinux-dist]$ <span class="input">make clean ; make
と実行した方が無難です。
ユーザランドの変更を行った場合
ユーザランドにあるファイルを変更したり、ディレクトリ構成を変更した場合は、romfsディレクトリの生成と、FlashROMに書き込むイメージファイルの作成を行います。
ユーザランドの変更方法は「ユーザランドの作成手順」を参考にして下さい
[PC uClinux-dist]$ make romfs ; make image
一時的にユーザランドの変更を行う場合は、romfsディレクトリ内を直接編集した後、
[PC uClinux-dist]$ make image
とコマンドを入力してFlashROMに書き込むイメージを作成して下さい。ただし、次回 "make" または "make romfs" コマンドを実行した時に変更は反映されません。