カーネルのコンパイル(4)
setsum というコマンドが x86 用であるため、
x86 でこの部分だけをコンパイル(実行?)してみる。
ramdisk.image.gz
先日取り出した ramdisk.image.gz を arch/ppc/boot/images に置く。
LinkStation でコンパイル
まずは LinkStation でコンパイルする。
[yasunari@ls kernel_melext3]$ make zImage.initrd
およそ30分後
../utils/setsum/setsum ../../../../firminfo.txt ../images/vmlinux.gz -r ../images/ramdisk.image.gz -o ../images/firmimg.bin
../utils/setsum/setsum: ../utils/setsum/setsum: cannot execute binary file
make[2]: *** [zImage.initrd] エラー 126
make[2]: 出ます ディレクトリ `/mnt/home/toda/nas_project/kuro-box/1.00/kernel_melext3/arch/ppc/boot/sandpoint'
make[1]: *** [zImage.initrd] エラー 2
make[1]: 出ます ディレクトリ `/mnt/home/toda/nas_project/kuro-box/1.00/kernel_melext3/arch/ppc/boot'
make: *** [zImage.initrd] エラー 2
[yasunari@ls kernel_melext3]$
ソースツリーを ThinkPad 310 にコピー
エラーになったところで、ソースツリーを ThinkPad 310 にコピーする
setsum 実行
ThinkPad 310 上で、
arch/ppc/boot/sandpoint で上記エラーになった行を実行する
[yasunari@tp310 sandpoint]$ ../utils/setsum/setsum ../../../../firminfo.txt ../images/vmlinux.gz -r ../images/ramdisk.image.gz -o ../images/firmimg.bin
Firm information struct size = 108 2
read config file:../../../../firminfo.txt
set date:2004/3/1 7:40:38
read Kernel file:../images/vmlinux.gz(652877 bytes)
initrd file:../images/ramdisk.image.gz(2271482 bytes)
Firmware ID :00001001
Name:KURO-BOX(IETSUNA) ver 1.00
Date:2004/4/1 7:40:38
kernel_offset:0000006C (652877bytes)
initrd_offset:0009F6B9 (2271482bytes)
total size: 2924467bytes
check sum = 38FE2634 4
Done..
[yasunari@tp310 sandpoint]$ ls -l ../images/firmimg.bin
-rw-r--r-- 1 yasunari root 2924467 Apr 1 07:40 ../images/firmimg.bin
とりあえず、できたみたい
Copyright (C) 2004 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp
山下康成@京都府向日市