编译Raspberry Pi的Linux Kernel

最近买了一个Raspberry Pi玩。前几天参考了其他人的方法也编译了一下Linux Kernel。参考的博文是:[raspberry pi] 树莓派 Kernel 编译笔记。这篇博文很详细,我前几次完全按照文章中的步骤做,但效果却是RPi上电后出现彩图就卡在那了、不再执行任何动作。

 

因此在参考博文步骤的基础上,试验了很多种其他方法,总算让我找到了一个成功的方案。这里顺便将我的环境简单说明下。使用的镜像是:2013-02-09-wheezy-raspbian。Linux Kernel源代码是2013-05-25号git下来的。交叉编译环境操作系统是最新版本的Ubuntu Desktop,是一台虚拟机。

 

与原文有两点不同。一是将下面这句改成了使用silentconfig。

原文是:

makeARCH=armCROSS_COMPILE=../RpiTools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi- oldconfig

修改后的是:

makeARCH=armCROSS_COMPILE=../RpiTools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi- silentconfig

第二点是,取消了下面这句,也就是说没有执行下面这句:

makeARCH=armCROSS_COMPILE=../RpiTools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi- menuconfig

未执行的这句原文中也并没有说必须要执行。

 

具体步骤可概括成:

1、下载编译工具、Kernel源文件、固件 Firmware。

2、获取当前Kernel的config.gz文件。即,SD卡上写入镜像的Raspberry Pi的Linux的config.gz文件。将config.gz解压后拷贝至git下来的linux kernel根目录下。再执行silentconfig命令。

3、编译kernel,生成kernel.img文件。

4、编译modules。

5、将kernel.img文件、新的modules文件和git下来的firmware文件拷贝至SD上的相应目录。

6、上电启动Raspberry Pi。

 

写这篇文章前,试着编译成功了两次。第二次,修改了版本号,上电后输入uname -a命令,果然看到了修改后的版本号:3.9.11。修改kernel源码根目录下的Makefile文件中相关字串可达到修改版本号的目的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值