H8用gccの作成(リベンジ)
以前、H8用gccの作成を失敗しましたが、最近とある事情でH8の開発環境を作らねばならなくなったので、再チャレンジしてみました。
でっ、できました!!コンパイル時間、3時間近くかかって(P4-2GHz)。
前回の敗因は、組み合わせるnewlibのバージョンがよくなかったようです。gcc-3.3.2に対してはnewlib-1.11.0の組み合わせでコンパイルがとおります。gcc-3.4だとnewlib-1.12.0なのかもしれません。
前回はCコンパイラだけしかターゲットにしていませんでしたが、今回はC++コンパイルも作ってみました。また、newlibのヘッダでコンパイラをコンパイルし、生成オプションをh8300-hmsからh8300-elfに変更。手順はほぼ前回と似ているのですが、手順を続きに載っけておきます。
順序としては、
(1)binutil-2.14のビルド&インストール
(2)gcc-3.3.2のビルド&インストール
(3)newlib-1.11.0のビルド&インストール
(1)binutilのビルド&インストール
binutilのソースをダウンロード、展開後に以下の操作。(binutilは/usr/local/src/binutils-2.14に展開されたとする)
$ cd /usr/local/src/binutils-2.14
$ ./configure --target=h8300-elf
$ make
$ make install
$ ./configure --target=h8300-elf
$ make
$ make install
(2)gccのビルド&インストール
gccとnewlibのソースをダウンロード、展開後に以下の操作。(gcc、newlibの展開先は、例えば/usr/local/src/gcc-3.3.2/、/usr/local/src/newlib-1.11.0/)
$ cd /usr/local/src/gcc-3.3.2/
$ mkdir BUILD
$ cd BUILD/
$ ../configure --target=h8300-elf --enable-languages="c++" --with-newlib --with-headers=/usr/local/src/newlib-1.11.0/newlib/libc/include
$ make LANGUAGES="c c++"
$ make install
$ mkdir BUILD
$ cd BUILD/
$ ../configure --target=h8300-elf --enable-languages="c++" --with-newlib --with-headers=/usr/local/src/newlib-1.11.0/newlib/libc/include
$ make LANGUAGES="c c++"
$ make install
(3)newlibのビルド&インストール
$ cd /usr/local/src/newlib-1.11.0/
$ mkdir BUILD
$ cd BUILD/
$ ../configure --target=h8300-elf
$ make
$ make install
$ mkdir BUILD
$ cd BUILD/
$ ../configure --target=h8300-elf
$ make
$ make install
その後、一連の処理を自動化したMakefileを作成しました。詳しくはここをどうぞ。
コメント
コメントする
- 匿名でのコメントは受け付けておりません。
- お名前(ハンドル名可)とメールアドレスは必ず入力してください。
- メールアドレスを表示されたくないときはURLも必ず記入してください。
- コメント欄でHTMLタグは使用できません。
- コメント本文に日本語(全角文字)がある程度多く含まれている必要があります。
- コメント欄内のURLと思われる文字列は自動的にリンクに変換されます。
- 投稿ボタンを押してエラーがでなければ、投稿は成功しています。反映されるまでには少し時間がかかります。