OSの開発環境を整える

良く紹介している川合さん執筆の「OS自作入門」とは、
開発環境は全く異なります。
私の個人的な趣味でやるわけで、そんな自己満足をここで書くだけなんで。
人間皆そんなもんだと思うからさ。
結局自己満足こそすべてですよ。なんだってそう。

私の場合は玄箱でやろうと思ったら、なぜかsambaの設定が上手くいかん。
どうもバージョンが上がったお蔭で、こんなに複雑になっている模様。
参ったなぁ。

とりあえずcygwinで開発しようと思う。
別に玄箱でやる必要性は無いんだが、
極力メインマシンのファイル数は減らしたいので。

使用するファイルは以下の二つ。

ftp://ftp.gnu.org/gnu/binutils/binutils-2.15.tar.gz
ftp://ftp.gnu.org/gnu/gcc/gcc-3.4.6/gcc-core-3.4.6.tar.gz

まぁバージョンはあまり気にしていない。結構適当に選んだ。
バージョンの違いによって色々と挙動が変わることもあるが、まぁ面倒だから気にしない。

cygwin上でOSを作るには、cygwinのsetup.exeで入れることのできるgccとは違ったものを使用する。
微妙に挙動が違うんだ、こいつも。

作り方は簡単です。
上の2つのファイルを適当なフォルダに保存。
cygwinを起動して、そこまで移動する。

後は、

tar xvzf binutils-2.15.tar.gz
cd binutils-2.15
./configure --target=i386-elf
make
make install

tar xvzf gcc-core-3.4.6.tar.gz
cd gcc-3.4.6
./configure --target=i386-elf
make
make install

あらかじめ入れるものは入れておかないとエラーが出る。
具体的なファイルとしては、setup.exeを実行して、
インストールするパッケージを選ぶ画面で、
Develの中にある、flexとbisonとgccとmakeとnasmを選べば、
他に必要なファイルも勝手に選ばれて、勝手にインストールしてくれる。

変なところにチェックが付いたぞゴルァ〜!

って言って勝手にチェックを外すと、面倒な事になりますので、
そのままインストールしましょう。

これが終わったら、上に示した2つのファイルをダウンロードして、
好きなフォルダ(大抵はc:\cygwin\home\ユーザ名)に入れて、
cygwinを再起動して、そのフォルダまで移動して、
上で示したコマンドをコマンドしましょう。

問題なくインストールできるはずです。
しかし時間が掛かりますので、かなり放置しておきましょう。
プロンプトが表示されていて、Errorってな言葉が見つからなければ、成功です。