資源
========================================
OS
Ubuntu 7.04 (kernel version: 2.6.20-15)
ToolChain
ARM-GCC v3.4.1
http://www.handhelds.org
Linux kernel
linux-2.6.20.10.tar.bz2 & linux-2.6.20.tar.bz2
http://www.kernel.org
Linux kernel patch for OMAP
patch-2.6.20-omap1.bz2
http://www.muru.com
教程
OSK5912 Newbie Guide
http://oskfordummies.hp.infoseek.co.jp
步驟
1. 安裝tool chain;
2. 根據《OSK5912 Newbie Guide》中的步驟編譯核心linux-2.6.20.10:
2.1. 當執行到“make menucongig”時候出錯,出錯提示如下:
-----------------------------------------------------------------------
shawn@shawn-laptop:/usr/src/linux-2.6.20.10$ make menuconfig
HOSTCC scripts/kconfig/lxdialog/checklist.o
在包含自 scripts/kconfig/lxdialog/checklist.c:24 的檔案中:
scripts/kconfig/lxdialog/dialog.h:32:20: 錯誤: curses.h:No such file or directory
......
-----------------------------------------------------------------------
3. 根據《OSK5912 Newbie Guide》中的步驟編譯核心linux-2.6.20:
3.1. 執行到patch那一步時候就提示“不能把/tmp/*** patch到/documentomap/**”下面。懷疑是許可權問題影響建立臨時檔案到/tmp下,但是sudo也不行;
3.2. 第二天重試,這次直接在console中切換成root許可權。step 3.1.通過,不知道原因;
3.3. 執行“make omap_osk_5912_defconfig”,問題同step 2.
4. 問題可能出在沒有安裝ncurses-dev軟體包,從而導致“make menuconfig”就不能使用。
4.1. 使用命令“sudo apt-get install ncurses-dev”安裝,提示“我選了 libncurses5-dev 而非 ncurses-dev”;
4.2. 安裝後“make menuconfig”正常;
5. 文檔提示“make menuconfig”時候注意NFS相關選項要選中,查看一下,預設已經選中;
6. 執行“make”,開始等待;
6.1. 特別看了下,預設編輯的FS包括autofs,autofs4,ext2,fat(M),jffs2,lockd(?),msdos(?)(M),nfs,nls(M),ramfs,sysfs,vfat(M);
7. 漫長的等待後,編譯成功,產生二進位檔案arch/arm/boot/compressed/vmlinux,另存新檔/home/shawn/doc/OMAP/vmlinux.20070429.
8. 下面的步驟需要編譯uboot產生的工具mkimage,跳轉到編譯uboot;
9. 編譯uboot之後,執行如下命令產生鏡像檔案uImage.cc,1.2MB大小;
@mkimage -A arm -O linux -T kernel -C gzip -a 0x10c08000 -e 0x10c08000 -n 'Linux Kernel Image' -d /usr/src/linux-2.6.20/linux.bin.gz /usr/src/linux-2.6.20/uImage.cc
9.1. 有機會需要研究這些選項的使用方法,例如-n;
9.2. 產生鏡像檔案時候給出提示資訊如下:
--------------------------------------------------------------------------------
Image Name: Linux Kernel Image
Created: Sun Apr 29 22:41:33 2007
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 1229135 Bytes = 1200.33 kB = 1.17 MB
Load Address: 0x10C08000
Entry Point: 0x10C08000
--------------------------------------------------------------------------------
9.3. 另存新檔/home/shawn/doc/OMAP/uImage.cc.20070429.