Linux-使用patch命令给uboot打补丁(3)

patch:修改文件,让用户对原文件打补丁

用法  

patch -p[剥离层级]  <[补丁文件]

打补丁示例:

u-boot-1.1.6_jz2440.patach补丁文件给u-boot-1.1.6打补丁

patch -p1  <../u-boot-1.1.6_jz2440.patach 

“p”指的是被打补丁路径,后面的数字表示去掉路径的第几部分。"1",表示去掉第1个

“<”指的是u-boot-1.1.6_jz2440.patach补丁文件位置

“../”表示返回上一个目录,如下图所示,这两个文件在同一目录下,当我们在u-boot-1.1.6目录下,就需要“../”:

1.如下图,先打开u-boot-1.1.6_jz2440.patach文件查看diff比较的目录位置,发现补丁文件是以u-boot-1.1.6目录开头的

2.所以在u-boot-1.1.6目录下时,打补丁使用patch -p1  <../u-boot-1.1.6_jz2440.patach

因为补丁文件在system目录下,所以使用"../"返回到system上一目录。

因为当前已经在u-boot-1.1.6目录下,所以使用p1删除补丁文件中第一个已经重复的目录名。

3:补丁打好后,在u-boot-1.1.6目录下使用make命令开始配置工程,

3.1 make 100ask24x0_config                                    //配置100ask

3.2 make                                                                //编译工程,并生成u-boot.bin文件,如下图所示

当要取消make编译时,在编译期间输入 make clean即可

4:通过FTP将编译好的bin文件拷贝到Windows上,然后通过oflash下载在nor flash中

 补充:

Patch文件说明:

diff -urN u-boot-1.1.6/common/cmd_bootm.c u-boot-1.1.6_jz2440/common/cmd_bootm.c   //蓝色代表原文件名以及文件地址,红色代表打上补丁后的新文件名以及地址
--- u-boot-1.1.6/common/cmd_bootm.c	2006-11-02 22:15:01.000000000 +0800
+++ u-boot-1.1.6_jz2440/common/cmd_bootm.c	2010-11-26 12:54:38.150155640 +0800
                                            //--- 对文件里代码删减     +++ 对文件里代码添加
@@ -318,5 +318,5 @@                         //-318,5 表示在原文件里第318行内有删减,接下来显示5段。+318,5同样类似
                                                          //第318行,第一段
	switch (hdr->ih_comp) {                           //第319行,第二段
 	case IH_COMP_NONE:                                //第320行,第三段
-		if(ntohl(hdr->ih_load) == addr) {         //第321行,删减第四段
+		if(ntohl(hdr->ih_load) == data) {         //第322行,增加第五段

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大魏分享(微信公众号:david-share)

讲真,Ansible 可以管理Windows?

前言: 本文是我和李尧老师一起实验。李尧是红帽高级培训讲师,目前负责红帽中国区员工内部技术培训与认证。 一、Ansible能对windows做什么操作? Ans...

4385
来自专栏云计算教程系列

如何在Ubuntu 14.04上安装和配置PostGIS

PostGIS是PostgreSQL关系数据库的空间扩展。PostGIS允许您使用几何和地理数据类型存储空间数据,使用空间函数执行空间查询以确定区域,距离,长度...

780
来自专栏前端黑板报

几款Chrome插件

Auto Copy 它的功用是即选即拷,可以选择不带格式的copy,对需要经常从网页上拷贝字词到world里的人来说很方便。 ? Vimium 熟悉Vim命令...

2247
来自专栏FreeBuf

极客DIY:只用两步教你制作一款可编程键盘

对于那些工作时需要与许多组合键打交道的人(比如经常使用Photoshop的人)来说,一款可编程键盘无疑是十分实用的。 本期的DIY将为大家带来一款可编程键盘,其...

1926
来自专栏Hadoop实操

如何在Kudu1.5中使用Sentry授权

Fayson在之前的文章详细介绍了CDH5.13的新功能,参考《CDH5.13和CM5.13的新功能》。CDH5.13中默认打包了Kudu,我们在安装Kudu的...

4037
来自专栏24K纯开源

Windows下Thumbnail的开发总结

一、引言        Windows Thumbnail Handler是Windows平台下用来为关联的文件类型提供内容预览图的一套COM接口。通过实现Th...

2386
来自专栏程序员宝库

IntelliJ IDEA 教程设置讲解

IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新...

674
来自专栏无原型不设计

[桌面版] 在 Mockplus 2.1 (预览版)中使用母版

Mockplus 2.1 预览版新增母版功能,可以直接复用组件,减少重复设计。 首先可以看一个母版的使用演示: ? 下面详细介绍一下母版的相关操作: 1...

2675
来自专栏写写代码吃吃瓜

Android的NDK开发中的UnsatisfiedLinkError

1274
来自专栏安恒网络空间安全讲武堂

打个3dsctf,电脑机都开不了?

3DSCTF Malware 3道题 writeup tags: - Reverse - malware ---- 这个ctf有个Malware的题型,...

2319

扫码关注云+社区