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里面去。