[MeeGo] Build Image

有kernel source直接跳到step 10

1.將kernel source(rpm)備份到meego root(i.e.aava-image)
kernel-mrst-2.6.35~rc-133.src.rpm(your kernel source)

2.先resize(當rpmbuild時找不到file)
jay@jay-medion:~/MeeGo/Linpus 0716 image and kernel patch$ resize2fs /dev/loop0

3.Change root到meego-handset-xxx-sda_rc6.bin image.
sudo mic-chroot meego-handset-ia32-shcdk-mtf-1.0.80.11.20100716.1-sda_rc6.bin

4.拷貝source到image檔案夾
jay@jay-medion:~/$ sudo cp kernel-mrst-2.6.35~rc6-133.1.src.rpm aava-image/

5.安裝必要軟體
bash-4.0# zypper install yum
bash-4.0# yum install rsync nano perf openssh-server screen gdb abrt{,-plugin-{logger,ccpp}} yum-utils strace git patch wget xorg-x11-utils-xinput connman-test

6.可能要裝的軟體
bash-4.0# yum install elfutils-libelf-devel
bash-4.0# yum install binutils-devel
bash-4.0# yum install newt-devel
bash-4.0# yum install make

7.切換到meego
bash-4.0# su meego

8.開始下載與安裝kernel RPM的開發軟體
[meego@jay-medion SOURCES]$
mkdir -p rpmbuild/{SOURCES,SPECS,BUILD,RPMS,SRPMS}
cd rpmbuild/SOURCES
rpm2cpio ../../kernel-mrst-*.src.rpm | cpio -idmv --no-absolute-filenames
mv kernel-mrst.spec ../SPECS/
rpmbuild -bp ~/rpmbuild/SPECS/kernel-mrst.spec

9.將linux-2.6.34複製到image root再copy出來
cp -r /home/meego/rpmbuild/BUILD/kernel-mrst-2.6.35~rc6/linux-2.6.34/ /

10.在kernel的資料夾Make
.../linux-2.6.34$ cp configs/kernel-mrst.config .config
.../linux-2.6.34$ make oldconfig
.../linux-2.6.34$ make -j2 bzImage
.../linux-2.6.34$ make modules
.../linux-2.6.34$ sudo make modules_install

11.在kernel source下拷貝bzImage與2.6.35-rc6到sdcard上,先砍掉SD card上的bzImage(boot/)
sudo rm /media/sdcard/boot/bzImage
sudo cp -r arch/x86/boot/bzImage /media/sdcard/boot/
sudo cp -r /lib/modules/2.6.35.3-5.1-mrst+ /media/sdcard/lib/modules/ (module檔名要注意)

Linux 核心編譯與管理可以參考
http://linux.vbird.org/linux_basic/0540kernel.php

Comments

Popular posts from this blog

[Linux] UVC Camera

UPnP Device Implementations

[UPnP] UPnP Implementers Corporation & UPnP Forum