この記事は古いです。参考の為に残してます。
H8/3069のROM容量はそれほど大きくないので、ネットワークを経由してサーバ等に保存した、
カーネルとユーザランドをRedBootで読み込み起動させます。
カーネル:私のイメージではOSに相当
ユーザランド:私のイメージではアプリケーションに相当
- DownLoad
OSJC.net http://uclinux-h8.oscj.net/ のhttp://uclinux-h8.oscj.net/uclinux-h8_op.htm
から以下のファイルをDownLoadさせていただきました。
1.h8300-linux-elf.tar.gz
2.uClinux-dist-h8300-20050409.tar.gz#tar xzf h8300-linux-elf.tar.gz -C / ←/usr/localにh8300-linux-elfディレクトリ作成
#tar xzf uClinux-dist-h8300-20050409.tar.gz - menuconfig するなら ncurses-devel
#cd uClinux-dist
#make menuconfig
エラーが頻発して全然だめ………。
パスを通してみたりしたがやっぱり、エラーが頻発して全然………。
ネットで現象を探ってみる………すると、kernel の構築で menuconfig
するなら ncurses-devel が必要ということを見付ける
とりあえず
#apt-get install ncurses-devel
#make menuconfig
やったネ♪ 動きました。ということで環境を構築します。 - Kernelとユーザランドの構築
#make xconfig
とすると、X上でグラフィカルに設定できますが、途中でエラーが発生してだめでした。
結局
#make menuconfig
で設定しました。
Vendor/Product Selectionの項目を設定(画面が切り替わって)
Select the Vendor you wish to target
では上の方にスクロールしていくとAkizukiがあったのでこれを選択
これを選んだら自動的に
Select the Product you wish to targetはAE3068になりました。
<EXIT>で抜けます。
Kernel/Library/Defaults Selectionの項目を設定(画面が切り替わって)
Libc Versionはよくわからないのでとりあえず。
Default all setingsを選択してみました<EXIT>で抜けます。ファイルのSAVE位置とか
聞かれましたが、よくわからん。その後もyes/noを聞かれるわかんのでEnterで。
基本的にNOを選択してみた。
んで、なんとか一応終了。
#make dep
#make
………………………………………………………………………………………
エラーが発生。
結局原因はわからない…………。あきれめるかと思ったけど、最後にダメもとで、
ぐぐってみたら、config.uClibcを変更にしてネというメーリングリストの書き込みがHIT!
早速修正してみた。。。。 - config.uClibcの変更
uClinux-dist/vendors/Akizuki/AE3068/config.uClibc
# UCLIBC_HAS_GNU_GETOPT is not set と言う行をUCLIBC_HAS_GNU_GETOPT=y別のエラーが。。。 - Makefile をちょっと修正
今度は、別のページでMakefile をちょっと修正しますというのを発見!
% diff vendors/Akizuki/AE3068/Makefile.orig vendors/Akizuki/AE3068/Makefile? 47,49c47,49
< ????????-flthdr -z $(ROMFSDIR)/bin/*
< ????????-flthdr -z $(ROMFSDIR)/sbin/*
< ????????-flthdr -z $(ROMFSDIR)/home/httpd/cgi-bin/*
—
> ????????-$(CROSS)flthdr -z $(ROMFSDIR)/bin/*
> ????????-$(CROSS)flthdr -z $(ROMFSDIR)/sbin/*
> ????????-$(CROSS)flthdr -z $(ROMFSDIR)/home/httpd/cgi-bin/*
と言うのを発見。早速修正しました。
これで、やっとmakeできました。
はりきってターミナルを起動し、TFTPサーバの設定をしてAKI3069ボードに転送します。load -r -h 192.168.183.66 -b 0x400000 aki3069.bin
exec -c “console=ttySC1,38400n81″…………
文字化けした漢字が2文字ほど出力されました…。
お~そういえばこのボード25MHzのクリスタルにしてるんだった。 - 25MHzのクリスタルに対応させる
どこをどう修正すればよいやら、皆目見当がつきません。
ググります。なんとなく、このへんか?とあたりをつけて以下のファイルを修正。
(/home/hamuken/H8/uClinux-dist/linux-2.4.x/arch/h8300/target_config.in)
if [ “$CONFIG_BOARD_AKI3068NET” = “y” ]; then
define_bool CONFIG_H83068 y
define_int? CONFIG_CLK_FREQ 25000?? ←ここを20000から25000に修正? define_bool CONFIG_RAMKERNEL y#make clean????????? ←再度一番始めからやってみます。
#make menuconfig
一応エラーが発生しないでmakeできました。
再度AKI3069ボードにTFTPで転送、exec。
やっと成功!!uClinuxが起動しました。ここまで2005/12/23にちから始めて2006/1/21に終了。
一ヶ月かかりました………。仕事なら別の手法を考えるところです(笑)。
頂いたコメント