如何在Openwrt上,针对内核创建自定义Patch?
参考资料:
1.http://wiki.openwrt.org/doc/devel/patches?s[]=quilt --- 官方对于如何打Patch的说明
2.http://blog.csdn.net/hbsong75/article/details/8825184 --- 使用quilt的小例子
众所周知,openwrt采用的是:从各个开源站点下载源码,解压缩,然后再打上N多Patch的方式,来搭建自己的编译环境的。其中,针对内核的编译,也是这么操作的。
那么,如何为内核创建自定义的Patch呢?
1. 使用quilt工具
quilt是一个开源的管理Patch的工具,openwrt采用此工具来生成Patch和打上Patch。具体使用方法,见参考资料2
2.从官网下载的openwrt的SDK中,针对内核已经有一些现存的Patch了。他们放在: target/linux/XXX子目录中,其中:
generic/-MIPS-ath79-XXXX.patch
H. 将build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.14.18/patches/platform/910-MIPS-ath79-XXXX.patch
拷贝到target/linux/ar71xx/patches-3.14 --- 这样,就真正将这个Patch 收编到SDK中了
I.将之前解压缩的linux内核目录全部删除: make target/linux/clean
然后,再利用 make kernel_menuconfig 或者 make target/linux/prepare V=s QUILT=1 就看到我们自定义的Patch已经生效了
***************注意:上述方式仅仅用于对原有内核文件修改的处理方式,如果是新增一个文件,则需要*******************
比如:若需要在build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.14.18/include/linux中加入文件:xxxx.h,则需要将此文件放到:
target/linux/ar71xx/files/include/linux 目录中
如何在Openwrt上,针对内核创建自定义Patch?的更多相关文章
- 如何在Ubuntu上给软件创建快捷方式
特殊方法:在搜索栏搜索程序 然后在快捷栏 反键 锁定在启动器 默认情况下,Ubuntu会将自动安装的软件快捷方式保存在/usr/share/applications目录下,如果我们要创建桌面 ...
- 如何在openwrt上实现 U盘的自动挂载
U盘的自动挂载,分为两种场景 1.路由器先上电,然后插上U盘并自动挂载 2.路由器先插上U盘,然后上电并自动挂载 上述场景的实现,需要如下几个步骤: 1.支持如下模块: USB驱动模块:USB OHC ...
- 分享如何在github上为代码创建一个链接
从自学前端到现在差不多一个月了,在此期间,一直有一种困惑,如何将自己电脑中编写的代码生成一个链接,以便可以发布呢?今天有幸被高人指点一二,现将其分享. 第一步,网上注册一个github账号 第二步,新 ...
- 在Linux上进行内核参数调整
在Solaris上,使用工具mdb就可以直接修改内核内存里的内容.而在Linux上,则通常使用命令sysctl(8)做类似的事情. 本文以Fedora为例,介绍如何在Linux上进行内核参数调整. 常 ...
- 【COCOS2DX-LUA 脚本开发之四】使用tolua++编译pk创建自定义类
此篇基本[COCOS2DX(2.X)_LUA开发之三]在LUA中使用自定义精灵(LUA脚本与自创建类之间的访问)及LUA基础讲解 在Lua第三篇中介绍了,如何在cocos2dx中使用Lua创建自定义类 ...
- 如何在Linux上通过grub添加内核参数
转自Linux中国 我们可以在linux内核启动时为其提供各种各样的参数.这些参数可以自定义内核默认的行为,或者通知内核关于硬件的配置信息.内核参数应在内核启动时通过引导装载程序,如GRUB或LILO ...
- 如何在openWRT系统上实现双版本
最近由于项目需要,需要在AR9331芯片单板(原来是4MBFlash,后来扩充到16MB Flash)上,实现openwrt双版本机制. 双版本的好处,主要是:在升级版本过程中,如果遇到断电等情况,不 ...
- 关于如何在github上创建团队开发环境
今天想写个如何在github上创建团队开发环境的博客.送给那些还不知道如何在github上创建团队开发环境的开发人员. 1.首先,当然你要有个github的账号.具体怎么注册我这里就不说了.可以上gi ...
- 如何在Linux上创建,列出和删除Docker容器
本篇文章介绍的内容是关于在Linux机器上创建,列出和删除docker容器,下面我们来看具体的内容. 1.启动Docker容器 使用下面的命令启动新的Docker容器.这将启动一个新的容器,并为你提供 ...
随机推荐
- js 获取两位小数的方法
1. 最笨的办法 function get() { var s = 22.127456 + ""; var str = s.substring(0,s.indexOf(" ...
- 在移动网页网页上点击链接跳转到QQ聊天界面
打开qq聊天窗口的方法 <a href="http://wpa.qq.com/msgrd?v=3&uin=1450612626&site=qq&menu=yes ...
- chrome浏览器 提示Adobe Flash Player未安装的解决方法
最近遇到了个flash player设置的一个问题,记录一下,可能不同浏览器版本和设置不一样 浏览器版本:版本 61.0.3163.100(正式版本) (64 位) 打开需要flash player的 ...
- Xshell连接mysql数据库乱码问题解决思路总结
乱码问题一直是一件让人头疼的事情,乱码就是编码格式不统一产生的,下面将一些常见的解决思路整理: 先Xshell连接上数据库,查看数据的编码格式: 一般需要看这么几个地方(附修改命令): 1.数据库的编 ...
- 使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度
使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度 一些泛WEB 2.0网站为了追求用户体验,可能会大量使用CSS和JS文件.这就导致在服务器带宽一定的情况下,多用户并发访问速度变慢.如何加 ...
- Android版俄罗斯方块的实现
学习Android的基本开发也有一段时间了,可是由于没有常常使用Android渐渐的也就忘记了. Android编程学的不深,不过为了对付逆向,可是有时还是会感到力不从心的.毕竟不是一个计算机专业毕业 ...
- 【Linux】Ctentos下载
百度输入:Download Centos 在百度搜索Download Centos然后进入Centos下载官网 点击上述标记的Download Centos,则会出现如下界面,并且点击"Mo ...
- C# 重载和默认参数(那种情况下使用更好)
当你提供函数,外部因为要传入不同参数个数,重载会导致 外部if增加, 默认参数可以消除外部的if.当外部调用函数需要判断调用那个函数,根据调用次数增多 if跟着调用持续增多两种不同的调用 //重载 ...
- spring日志加载代码解析
项目用的是springmvc+spring+mybatis框架, 配置日志的时候非常简单,仅仅是把commons-logging.log4j,还有slf4j-log4j三个日志相关的jar包导入项目, ...
- Mysql报错......\xE6\x80\xBB\xE7\x9B\x91' for column...
Mysql添加表中字符报错:Incorrect string value: '\xE6\x80\xBB\xE7\x9B\x91' for column 'postName' at row 1 原因:字 ...