[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
Post a Comment