欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > openwrt 使用quilt 打补丁(patch)

openwrt 使用quilt 打补丁(patch)

2025/11/10 11:03:35 来源:https://blog.csdn.net/BUG_MeDe/article/details/147745788  浏览:    关键词:openwrt 使用quilt 打补丁(patch)

1,引入

        本文简单解释如何在OpenWRT下通过quilt命令打补丁--patch,也可查看openwrt官网提供的文档

2,以下代码通过编译net-snmp介绍

        ① 执行编译命令之后,进入build_dir的net-snmp-5.9.1目录下,改目录即为snmp最终编译的目录了

//该命令直接编译snmp
make package/network/services/net-snmp/compile V=s//在工程根目录先回生成 build_dir (openwrt应用都在这个目录下编译)
cd ./build_dir/target-mipsel_24kc_musl/net-snmp-5.9.1

 ② 如何编译snmp时,已经在package对应的目录下存在patch,我们可以再改目录下执行:

cd ./build_dir/target-mipsel_24kc_musl/net-snmp-5.9.1quilt push -a :加载所有的补丁文件

③ 如果我们要为已有的某个文件或多个文件创建一个patch,应该这样做:

quilt new 100-add_module_files.patch :新创建一个patch文件quilt edit agent/snmpd.c  :执行该命令将通过vim打开该文件,进行修改
quilt edit agent/snmpd.h  :执行该命令将再次vim打开该文件,进行修改如果我们需要增加一个新的文件,使用:touch test.c
向patch中增加文件: quilt add test.c同时修改该文件时,任然使用 quilt edit test.c 修改//完成以上步骤:执行以下命令生成patch
quilt refresh

④ 执行完成后,可以在当前目录下的patches中查看:

 ⑤,将生成的patch文件复制到package对应目录,再去编译,才能应用当前patch生效

cp patches/111-test.patch /主目录/package/network/services/net-snmp/patches

以下是我生成的patch文件: (不用于diff)

 3,总结

        上面介绍了如何增加一个patch文件,还有其他的用法目前还没接触,值得注意一点的是,在build_dir/中修改了原码文件,在编译时不生效的,需要为修改的部分重新生成patch,才可以。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词