2011年6月13日月曜日

obs600-07 bmake build

前回 obs600-06 USBメモリBoot に続いて、bmake buildをしてみます。

もとネタは、ぷらっとホームさんのページファームウェアの作成 をこの通りにやってみます。

(1) BootさせるUSBメモリの準備 sysinst
-rw-rw-r-- 1 root wheel  8761531 Apr 15 01:24 src.tgz
ssd-linux[24]# tar ztvf /usr/INST/src.tgz |head
ssd-linux[31]# tar zxfp /usr/INST/src.tgz -C /
(2) bmake build の実行 失敗
ssd-linux[14]# cd /usr/src
ssd-linux[15]# date; bmake build | tee -a bmake_1.log ; date
(省略)
Stop.
bmake: stopped in /usr/src/lib/modules/wireless/rtl8712
*** Error code 1*** Error code 1*** Error code 1
###こんな所で停止したので以下をコメントにした。
ssd-linux[13]# diff lib/modules/wireless/Makefile.org lib/modules/wireless/Makef ile
19,22c19,22
< .if ${SSDVERSION} == "0.5" || ${SSDVERSION} == "0.6"
< # Wireless LAN driver for Realtek 8712 8188 8191 8192SU
< SUBDIR= rtl8712
< .endif
---
> #.if ${SSDVERSION} == "0.5" || ${SSDVERSION} == "0.6"
> ## Wireless LAN driver for Realtek 8712 8188 8191 8192SU
> #SUBDIR= rtl8712
> #.endif
ssd-linux[14]# 
(3) bmake build の実行 再度
ssd-linux[14]# cd /usr/src
                                 (2回目以降 NOCLEANをつけた)
ssd-linux[15]# (date; bmake build -DNOCLEAN; date) | tee -a bmake_4.log

2〜3日放置しておくと、以下が出て終わっていました。
(省略)
/usr/src/distrib/powerpc-obs600/dtb/../../../linux/arch/powerpc/boot/dts/
(cd /usr/src/distrib/powerpc-obs600/dtb/../../../linux; make ARCH=powerpc  obs600.dtb)
arch/powerpc/boot/dtc -O dtb -o arch/powerpc/boot/obs600.dtb -b 0 -p 1024 /usr/src/linux-2.6.29/¥
arch/powerpc/boot/dts/obs600.dts
DTC: dts->dtb  on file "/usr/src/linux-2.6.29/arch/powerpc/boot/dts/obs600.dts"
cp /usr/src/distrib/powerpc-obs600/dtb/../../../linux/arch/powerpc/boot/obs600.dtb¥
 /usr/src/distrib/powerpc-obs600/dtb
mkimage -n "0.5-20110610" -A ppc -O linux -T multi -C gzip -d /usr/src/distrib/powerpc-obs600/¥
standard/treeboot/../../kernel/vmlinux.bin.gz:../initrd/ramdisk.image.gz:/usr/src/distrib/¥
powerpc-obs600/standard/treeboot/../../dtb/obs600.dtb uImage.initrd || (rm -f uImage.initrd; exit 1)
Image Name:   0.5-20110610
Created:      Fri Jun 10 05:50:48 2011
Image Type:   PowerPC Linux Multi-File Image (gzip compressed)
Data Size:    16062934 Bytes = 15686.46 kB = 15.32 MB
Load Address: 00000000
Entry Point:  00000000
Contents:
   Image 0: 1694826 Bytes = 1655.10 kB = 1.62 MB
   Image 1: 14360187 Bytes = 14023.62 kB = 13.69 MB
   Image 2: 7902 Bytes = 7.72 kB = 0.01 MB
Fri Jun 10 05:50:55 JST 2011
ssd-linux[68]# df     ・・・8GB-USBメモリのビルド後の容量は 4.2GB くらい
Filesystem           1K-blocks      Used Available Use% Mounted on
LABEL=/                7279852   4370024   2540032  64% /
ssd-linux[16]# 
(4) uImage.initrd の出来上がり。たぶん。
ssd-linux[70]# find /usr/src -name 'uImage.initrd*' -ls
-rw-r--r--1 root wheel  2119926 Jun 10 05:35 /usr/src/distrib/powerpc-obs600/cfboot/treeboot/uImage.initrd-cfboot
-rw-r--r--1 root wheel 16062998 Jun 10 05:50 /usr/src/distrib/powerpc-obs600/standard/treeboot/uImage.initrd

このuImageカーネルで起動する確認をしておきます。

scp -p /usr/src/distrib/powerpc-obs600/standard/treeboot/uImage.initrd ¥
    192.168.1.70:/tftpboot/uImage.initrd_20110610_0550
scp -p /usr/src/distrib/powerpc-obs600/cfboot/treeboot/uImage.initrd-cfboot ¥
    192.168.1.70:/tftpboot/uImage.initrd-cfboot_20110610_0535

=> setenv bootargs root=/dev/ram rootdelay=15 console=ttyS0,115200
=> tftpboot 0x400000 192.168.1.70:uImage.initrd_20110610_0550
=> bootm 0x400000

=> setenv bootargs root=/dev/sda1 rootdelay=15 console=ttyS0,115200
=> tftpboot 0x400000 192.168.1.70:uImage.initrd-cfboot_20110610_0535
=> bootm 0x400000

それぞれ問題なく以前のこれら、
0.5-RELEASE-20110407-cfboot   2122882 Apr 15 01:33 uImage.initrd-cfboot
0.5-RELEASE-20110407         15951278 Apr 15 01:33 uImage.initrd_R20110407
自前でコンパイルしたものでも同様に起動することが確認出来ました。

さらに、kernelバージョン2.6.29 を 2.6.36 にして同じように、ビルドします。
#Debian環境で2.6.36ビルド用

# diff /etc/mk.conf.org /etc/mk.conf
15c15
< HAVE_CVS?=    yes
---
> HAVE_CVS?=    no
25a26,27
> 
> KERNEL_PATCHLEVEL=36
SSD/Linux環境でビルド出来たので次は、Debian環境でのビルドを試みます。
--

0 件のコメント:

コメントを投稿