inferno を VirtualBox上で動くように Ubuntu で コンパイル したときのメモ
- ソースコードの入手
- $apt-get install mercurial
- $cd /usr
- $sudo hg clone https://inferno-os.googlecode.com/hg/ inferno
- $sudo chmod -R 777 /usr/inferno
どうも、コンパイルが通らないのでVita Nuovaのバージョンを利用する。
- inferno Fourth Edition(inferno-20100120.tgz)をダウンロード
- inferno-20100120.tgzを解凍し、中身を/usr/inferno/へ上書き
- コンパイル用ライブラリのインストール
- $sudo apt-get install libxpm-dev
- $sudo apt-get install libxext-dev
- $sudo apt-get install x11proto-xext-dev
- infernoのコンパイル
- $sudo vi inferno/mkconfig
@@ -17,0 +18,0 @@ - SYSHOST=Plan9 +# SYSHOST=Plan9 + SYSHOST=Linux @@ -25,0 +27,0 @@ -# OBJTYPE=368 - OBJTYPE=$objtype + OBJTYPE=368 +# OBJTYPE=$objtype
- $sh makemk.sh
- $export PATH=$PATH:/usr/inferno/Linux/368/bin/
- $mk nuke
- $mk install
- $sudo vi inferno/mkconfig
- PBS(PCパーティションブートセレクタプログラム)と9load(カーネルローダ)のコンパイル
- $mkdir /usr/inferno/Inferno/386/lib/
- $sudo chmod -R 777 /usr/inferno/Inferno/386/lib/
- $cd /usr/inferno/os/boot/pc/
- $mk pbs.install 9load.install
- カーネルコンパイル
- $cd /usr/inferno/os/pc
- $vi ether79x970.c
@@ -540,6 +540,7 @@ switch(x&0xFFFFFFF){ case 0x2420003: /* PCnet/PCI 79C970 */ case 0x2621003: /* PCnet/PCI II 79C970A */ + case 0x2625003: /* PCnet/FAST III 79C973 */ break; default: print("#l%d: unknown PCnet card version %.7ux\n",
- $vi pc
@@ -48,10 +48,11 @@ kern link - ether2114x pci + ether79c970 pci +# ether2114x pci # ether82557 pci - ether83815 pci - etherelnk3 pci +# ether83815 pci +# etherelnk3 pci ps2mouse ethermedium # pppmedium ppp compress @@ -70,7 +71,7 @@ math init - wminit + shell code int kernel_pool_pcnt = 10; @@ -79,7 +80,7 @@ int image_pool_pcnt = 40; int cflag=0; int swcursor=0; - int consoleprint=0; + int consoleprint=1; port alarm @@ -137,3 +138,5 @@ /dis/lib/daytime.dis /dis/lib/auth.dis /dis/lib/ssl.dis + /dis/lib/arg.dis + /dis/lib/filepat.dis
- $mk
- カーネルロード設定ファイルの作成
- $vi /usr/inferno/os/pc/plan9.ini
bootfile=fd0!ipc.gz
- $vi /usr/inferno/os/pc/plan9.ini
- フロッピーイメージの作成
- $emu
- ;cd os/pc
- ;gzip ipc
- ;disk/format -b /Inferno/386/pbs -df inferno.img /Inferno/386/9load plan9.ini ipc.gz
出来上がったinferno.imgをVirtualBoxにマウントしBoot
確かに起動はできたが、たまにPanicを起こす。
infernoもPlan9系だからVirtualBoxではだめなのかもしれない。
それに、Native infernoをコンパイルできたけど、FD起動なんだよね。
Plan9のブートローダで起動可能ってことはこれで分かったんだけど、
HDDからブートさせたい・・・Native infernoを使うにはPlan9の勉強した方がいいかもしれない。
次回はinferno in QEMU on WindowsXPを試してみよう。 - 参考