u-boot打補丁過程:
1、 將u-boot-1.1.6.tar.bz2(指工程壓縮包名字,名字自定),和u-boot-1.1.6_jz2440.patch拖到Ubuntu文件目錄下(從windows中拖過來,我放置在/work/system/文件目錄下),完成后如下:
2、 執行linux命令,進入上述文件目錄
meng@men:~$ cd /work/system
列出system目錄下文件清單
meng@men:/work/system$ ls
解壓u-boot-1.1.6.tar.bz2
meng@men:/work/system$ tar xjf u-boot-1.1.6.tar.bz2
解壓后如下
進入u-boot-1.1.6目錄
meng@men:/work/system$ cd u-boot-1.1.6/
打補丁命令
meng@men:/work/system/u-boot-1.1.6$ patch -p1 <../u-boot-1.1.6_jz2440.patch
回車后打完補丁
上述打補丁命令解析:
patch:聲明補丁命令
-p1:表示忽略掉補丁文件內位置信息中的第幾個“/”之前的內容,這里是1就表示忽略第一個/之前的內容。補丁文件內容:
由打補丁命令meng@men:/work/system/u-boot-1.1.6$ patch -p1 <../u-boot-1.1.6_jz2440.patch可以看出此時已經在/u-boot-1.1.6目錄下了,因此忽略掉第一個反斜杠,即要向/board/100ask24x0/目錄下的100ask24x0.c文件打補丁,打好以后放置在/board/100ask24x0/目錄下,文件名是100ask24x0.c,即打完補丁不改變它的位置和名稱(原地修改內容);
../u-boot-1.1.6_jz2440.patch:“..”表示回到上一級目錄下,找到u-boot-1.1.6_jz2440.patch文件
3、 打上補丁之后,返回上一級目錄,即system目錄下
meng@men:/work/system/u-boot-1.1.6$ cd ..
列出system目錄下文件列表
meng@men:/work/system$ ls
可以看到我們剛剛打完補丁的u-boot-1.1.6文件夾
將u-boot-1.1.6_jz2440.tar.bz2 u-boot-1.1.6壓縮為u-boot-1.1.6_jz2440.tar.bz2
meng@men:/work/system$ tar cjf u-boot-1.1.6_jz2440.tar.bz2 u-boot-1.1.6
然后將壓縮包移到windows下,解壓縮,用windows下的各種工具,方便閱讀代碼,如source insight軟件,沒問題后,執行linx編譯命令,生成bin文件:
meng@men:/work/system/u-boot-1.1.6$
配置100ask24x0_config
meng@men:/work/system/u-boot-1.1.6$ make 100ask24x0_config
執行完成后
meng@men:/work/system/u-boot-1.1.6$ make
編譯完成后,不出錯的話生成u-boot.bin文件,通過windows下的J-link燒寫到nor flash里面去。