警告メッセージ

Howtoは、Armadilloシリーズを有効に活用するための参考資料です。使用ソフトウェアのバージョンなど諸条件の差異によって、記載内容と実際の動作が異なる場合があります。また、すべての機能検証や長期の動作試験を行ったものではありませんので、必ずご使用目的に適合した検証・試験を行ってください。

Howto : ユーザーランドアプリケーションを追加する(Armadillo-J)

対象製品: Armadillo-J

作成したアプリケーションをdistパッケージ(uClinux-dist.tar.gz)に登録し、コンフィグメニューから選択・コンパイルできるようにする方法です。

sample というアプリケーションを追加する例を元に説明します。

1. アプリケーション用ディレクトリの作成

はじめに、distパッケージを展開しておきます。
以後、展開後作成されるディレクトリ(uClinux-dist)をワークディレクトリと呼びます。

ワークディレクトリ下にある「user」ディレクトリ内に、アプリケーション用のディレクトリ「sample」を作成し、サンプルプログラムの作成で作成したソースコードをコピーします。

2. config.in ファイルへ設定を追加

config.inファイルを修正して、コンフィグメニュー(make menuconfig)から選択できるようにします。config.inファイルはワークディレクトリ下にある「config」ディレクトリ内にあります。
作成したプログラムはコンソールに文字列表示するだけの単純なプログラムですので「Miscellaneous Applications」から選択できるようにします。


bool 'rootloader'   CONFIG_USER_ROOTLOADER_ROOTLOADER
bool 'sample'       CONFIG_USER_SAMPLE_SAMPLE ← この行を新たに追加する

bool 'setserial'    CONFIG_USER_SETSERIAL_SETSERIAL

保存して、編集を終了します。

追加した行の「CONFIG_USER_SAMPLE_SAMPLE」の文字列は自由に設定して構いませんが、すでに使用されている文字列と重複しないように注意して下さい。

3. Makefile ファイルへ設定を追加

続いて、Makefile を修正してアプリケーションがコンパイルされるように設定します。

Makefile は ワークディレクトリ下の「user」ディレクトリ内にあります。


dir_$(CONFIG_USER_SAMBA_SMBUMOUNT)          += samba
dir_$(CONFIG_USER_SAMPLE_SAMPLE)            += sample ← この行を新たに追加する
dir_$(CONFIG_USER_SASH_REBOOT)              += sash 

括弧内の文字列(CONFIG_USER_SAMPLE_SAMPLE)は、上記 2)と同じ文字列を指定して下さい。

保存して、編集を終了します。

4. イメージファイルへ追加するための設定

コンパイル後、作成されたオブジェクトファイルがイメージファイル(image.bin)に含まれるように、アプリケーション用のMakefileを編集します。

以下の例のようにMakefileを作成し、アプリケーション用ディレクトリ(sample)に追加して下さい。


EXEC = sample
OBJS = sample.o
all: $(EXEC)
$(EXEC): $(OBJS) $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS)
romfs:            ← ユーザーランドに   $(ROMFSINST) /bin/$(EXEC) ← 追加するための記述
clean: -rm -f $(EXEC) *.elf *.gdb *.o

5. アプリケーションの選択とコンパイル

ワークディレクトリから「make menuconfig」と入力し、登録したアプリケーションを選択します。
「[ ] Customize Vendor/User Settings (NEW)」をチェックして保存・終了します。


 Target Platform Selection  ---> 
   [ ] Customize Vendor/User Settings (NEW)

続けてアプリケーションの選択画面に移ります。画面に新たに「sample」が追加されます。


  Miscellaneous Applications  ---> 
    [ ] rootloader 
    [ ] sample (NEW) 
    [ ] setserial

チェックして保存後、「make」コマンドを発行してコンパイルを行います。

6. イメージ転送・動作確認

コンパイル完了後、作成したイメージ(image/image.bin)をArmadillo-Jに転送します。

転送方法はイメージの書き換え手順を参考にして下さい。


[PC ~]# hermit download -i image/image.bin -r user

※ ワークディレクトリでコマンドを入力します。

7. 再起動

転送終了後、Armadillo-Jの再起動を行います。

再起動後、ログインして作成したアプリケーションが動作するかどうか確かめます。


BusyBox v0.60.5 (2004.04.07-09:32+0000) Built-in shell (msh)
[armadillo ~]$ sample
Hello world!
[armadillo ~]$
カテゴリ: