AKI-H8/3069F用Redbootコンパイル
Redbootコンパイル手順について説明します。
ecos configuration tools
コンフィグ用ツールをダウンロード
色々と聞かれるのでデフォルトで答える(enterキー)。ただしダウンロードサイトは数字で答える(26)
ここで同時にダウンロードされるpackagesはH8に関して古いので使用しない。
h8用ecos
修正1
/opt/ecos/ecos/packages/redboot/current/src/net/net_io.c
の
#define
IP_ADDR(a) _IP_ADDR(a)
#define
_IP_ADDR(a, b, c, d) ((a << 24) | (b << 16) | (c << 8) | d)
の次の行に
#define
_IP_ADDR(a) (a)
を追加。これをしないとredboot with flashの構築に失敗する。
修正2
/opt/ecos/ecos/packages/devs/eth/h8300/alo3068net/current/src/if_aki3069.net
の71行目の
<cyg/io/eth/eth_drv.h>
をコメントアウトする。これをしないとnetテンプレートでの構築が失敗する。
修正3
次のkernel関連ファイルやnet関連ファイルはecosのCVSの方が新しくバグフィックスされているので、入れ替える。ただしnet/bsd_tcpip/current/include/sys/time.hは新しい方には無いので古いものを使うこと。
$ mkdir /opt/ecos-org
$ cd /opt/ecos-org
$ cvs -z3 -d:pserver:
[email protected]:/cvs/ecos co -P ecos
$ cp -f -r /opt/ecos-org/ecos/packages/net/* /opt/ecos/ecos/packages/net
$ cp -f -r /opt/ecos-org/ecos/packages/kernel/* /opt/ecos/ecos/packages/kernal
環境変数の設定
$ cd ~
$ echo "export PATH=/opt/ecos/ecos-2.0/tools/bin:/gnutools/bin:$PATH" >> .bash_profile
$ echo "ECOS_REPOSITORY=/opt/ecos/ecos/packages" >> .bash_profile
これで再ログインした時にecosを構築するのに必要な環境が整っている。
redboot作成
$ mkdir ~/develop/ecos/redboot
$ cd ~/develop/ecos/redboot
$ ecosconfig new aki3068net redboot
$ ecosconfig add CYGPKG_DEVS_FLASH_H8300_PROGS
$ ecosconfig add CYGPAK_IO_FLASH
$ ecosconfig add CYGPKG_IO_ETH_DRIVERS
コンフィギュレーションをいじくる。
コンフィグレーションのファイル ecos.eccを編集します。
↓スタックは4096も要らないみたいなので。
cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
user_value 2048
};
↓コマンドヒストリも16もいらない。
cdl_option CYGNUM_REDBOOT_CMD_LINE_EDITING {
user_value 8
};
↓IPアドレスを設定。
cdl_component CYGDAT_REDBOOT_DEFAULT_IP_ADDR {
user_value 1 "192, 168, 1, 88"
};
↓SCIの転送速度を38400bpsに設定。
cdl_option CYGNUM_HAL_H8300_SCI_BAUD_RATE {
user_value 38400
};
↓DHCPを無効にする。
cdl_option CYGSEM_REDBOOT_DEFAULT_NO_BOOTP {
user_value 1
};
今回の変更はコレくらいです。
早速、コンフィギュレーションからソースを生成させます。
makefileとソース一式ができあがるので、makeを実行します。
↓コンフィギュレーションからソース一式を生成してビルド。
$ ecosconfig tree
$ make
最終更新:2008年05月17日 18:46