瞭解了9260的一些基本知識後,接下就是為移植核心到終端做一些準備工作。
工作環境:XP + 虛擬機器ubuntu9.10;
核心版本:linux-2.6.27+最新補丁(http://www.at91.com/linux4sam/bin/view/Linux4SAM/LinuxKernel);
編譯器 :arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu
目標機器:終端產品
1. 安裝交叉編譯器:
下載交叉編譯器:arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
建立目錄:sudo mkdir -p /usr/local/arm/toolchain
解壓工具鏈壓縮包:sudo tar xjvf arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /usr/local/arm/toolchain/
添加編譯器環境變數:sudo vi /etc/profile,在底部添加:export PATH=:$PATH:/usr/local/arm/toolchain/arm-2007q1/bin
使環境變數生效:source /etc/profile
檢查是否生效:arm-none-linux-gnueabi-gcc -v,如果有版本號碼提示,則說明交叉編譯器安裝成功了
2. 首先下載核心源碼:wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.bz2
下載完後,解壓 :tar xvjf linux-2.6.27.tar.bz2
進入核心源碼目錄:cd linux-2.6.27/
3. 打補丁,注意有兩補丁:
打維護者補丁:
wget http://maxim.org.za/AT91RM9200/2.6/2.6.27-at91.patch.gz
打補丁:zcat 2.6.27-at91.patch.gz | patch -p1,執行命令時我的ubuntu9.10會提示:patch: command not found,這時執行:sudo aptitude install patch進行安裝即可解決。
打社區的補丁(注意補丁的版本):
wget ftp://www.linux4sam.org/pub/linux/2.6.27-at91-exp.patch.gz
打補丁:zcat linux-2.6.xx-at91-exp.diff.gz | patch -p1