Sirius

2008年11月1日(土) 13:43

Kernel-2.6.25.19 をコンパイルしてみる

玄箱/HG を Fedora8 にできたので今度はカーネルのコンパイルをして見ます。
一応、gcc とかは最新の状態になっているはずなので、玄箱のパッチのある最新のソースということで、2.6.25.19 をコンパイルしました。

まず、ソースとパッチを取得します。
玄箱用のパッチを公開してくれている人に感謝です。場所はここです。

# wget http://www.genbako.com/kurobox-sources-2.6.25.patch
# wget http://www.genbako.com/kurobox-section-mismatch2625.patch
カーネルソースは ring サーバから取得しました。
# wget http://www.t.ring.gr.jp/archives/linux/kernel.org/kernel/v2.6/linux-2.6.25.19.tar.gz

ソースを展開してパッチを当てます。
# tar xvfz linux-2.6.25.19.tar.gz
# cd linux-2.6.25.19
# patch -Np1 <../kurobox-section-mismatch2625.patch
# patch -Np1 <../kurobox-sources-2.6.25.patch

コンフィグレーションを行います。
# cp config_kuroboxhg .config
# export ARCH=ppc
# make oldconfig

環境変数 ARCH を設定しないとうまくいきません。
カーネルの作成。
# make vmlinux

できたカーネルを hda1 のブートへコピーします。hda1 は /mnt/hda1 へマウントしました。
# mount /dev/hda1 /mnt/hda1
# objcopy -O binary vmlinux /mnt/hda1/boot/vmlinux-2.6.25-kuroboxHG
# cp System.map /mnt/hda1/boot/System.map-2.6.25-kuroboxHG

モジュールのコンパイルとインストール。
# make modules
# make modules_install

起動時に新しいカーネルを選択できるようにブートメニューに追加します。

# vi /mnt/hda1/etc/kuro_boot.conf

3 番目のメニューに追加しました。
# Menu entry No.3
#
menu3="Fedora8(kernel 2.6.25.19)"
loader3=/boot/loader_hg.o
kernel3=/boot/vmlinux-2.6.25-kuroboxHG
option3='cmdline="root=/dev/hda3"'

再起動して 3 番目から起動して動きました。
kuro_boot.conf を書き換えてデフォルトで 3 番目から起動できるようにしました。

うーーん、これで一通り環境はできたから後はサーバーとして dhcp や dns を動かせばいいのですが、Fedora9 にしたい。
ところが、Fedora9 から init プロセスが upstart に変わったのでうまく動かないらしい。どうするか。思案中です。

written by sirius [玄箱] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Sirius

MySketch 2.7.2 written by 夕雨