ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
Main Menu
Tweet
Facebook
Line
:-?
フラット表示 前のトピック | 次のトピック
投稿者 スレッド
webadm
投稿日時: 2006-1-16 11:00
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3082
玄箱でuClinux-H8用のクロス開発環境を作る
uClinux-H8をビルドするためにはこないだこしらえたh8300-hms(Hitach Micro Systemsの略らしい)ではだめでh8300-linux-elfでないといけないようで作り直し。

h8300-hmsと同じバージョンのbinutilsやgccでこしらえてみたらどうも実際にuClinuxをビルドしてみると意味不明なエラーメッセージをコンパイラが吐いてとまってしまう。もしかしたら新しいバージョンではまだだめなのかも。と少し古いさかのぼったバージョンをいろいろとってきてはビルドしなおしてテストしてみると少し古いものはOKの模様。あまり古いとh8300-linux-elfでコンフィグレーションすらできないものがあるので注意。

binutils-2.13.2
elf2flt-20050308
gcc-3.4.0(もしくはgcc-3.3.6でも良い)
newlib-1.13.0

上記を展開して以下の手順でビルド&インストール

cd binutils-2.13.2
mkdir objdir
cd objdir
../configure --target=h8300-linux-elf
make
make install

cd ../elf2flt
./configure --target=h8300-linux-elf \
--with-libbfd=../binutils-2.13.2/objdir/bfd/libbfd.a \
--with-bfd-include-dir=../binutils-2.13.2/objdir/bfd \
--with-libiberty=../binutils-2.13.2/objdir/libiberty/libiberty.a \
--with-binutils-include-dir=../binutils-2.13.2/include
make
make install

cd ../gcc-3.4.0
ln -s ../newlib-1.13.0/newlib .
mkdir objdir
cd objdir
../configure --target=h8300-linux-elf --with-newlib \
-enable-languages=c,c++
make
make install

はまったのがelf2fltです。build時には直前にbinutilsがmake installされていて古いelf2fltのバイナリがシステムから削除されている必要があります。これはelf2fltがbinutilsのldの実行ファイルをスクリプトで置き換えてオリジナルのldファイルをld.realという名前にリネームするためです。binutilsを事前にmake installしないと最後にelf2fltをmake installしたときにインストールされたシェルスクリプト版のldがld.realにコピーされるのでオリジナルのldがどこにも無いことになってしまってlink時にはまります。

玄箱HGですがそんなにコンパイルスピードは速くないのでgccのビルドには何時間もかかってしまいます。uClinuxのビルドも皆さんIntel PC上でやるのが前提みたいですし、そのあたりでもはまりましたその話は後日また。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » 玄箱でuClinux-H8用のクロス開発環境を作る webadm 2006-1-16 11:00

投稿するにはまず登録を
 
ページ変換(Google Translation)
サイト内検索