树莓派Linux系统内核源码下载方式(参考了rpi-source的wiki)
最近使用树莓派开发东西,买了个树莓派3B,然后去官网下载了img镜像烧写进去,由于需要用到内核源码,去/lib/modules/4.4.21-v7+/目录下找不到build链接啊,也不知道这个4.4.21-v7+是个什么版本号(项目中其它人用的此版本开发,所以不得已用此版本),内核也不敢随便乱下,后来才找到一个自动检测当前内核版本并下载源码的文件,才把这事给搞定了。
故在此记录一下,如果有人也有此困惑,能帮到就最好了。
由于本人对Linux仍处于入门状态,如有讲的不对的地方,还请各位指出来,谢谢了。
下载方式一:(也即我采用的方法)
1.以下操作均在root用户下进行
2.打开树莓派终端,输入以下命令下载一个名为rpi-source的文本文件,我就直接下载在桌面上了,有关此文件的更多信息,请见参考链接1和2
wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source
3.赋予rpi-source 可执行权限
chmod +x rpi-source
4.输入下面的语句,具体意思不是很懂,不过文件中有注释
./rpi-source -q --tag-update
5.如果上一步提示SSL证书失效,请安装或更新openssl,使用以下命令,然后再次步骤4
apt-get install openssl
6.执行rpi-source,输入下面的命令
./rpi-source
7.它会自动检查gcc版本,如果不符合就报错,我的gcc版本是4.9.1,没有报错,报错请见参考链接1中的解决方案
8.它还会自动检查bc,如果没有会提示安装,输入以下命令即可安装,安装完后再次步骤6
apt-get install bc
9.顺利的话,它会匹配出当前内核版本的源码,并且自动下载,下载过程很慢,通常要几个小时,虽然才100多M,终端下载容易断,断了又会重新下。所以可以在它显示的提示信息处找到下载链接,用电脑来下载,如下图:
10.请注意,如果用终端下载,然后不小心关掉终端的话,需要删掉之前的下载的文件,不然,再次执行步骤6的话,它会认为文件下载完毕,开始解压,然后由于文件不全报错,所以要先删掉再下载。
11.文件下载位置在/root/目录下,文件名是linux-xxx.tar.gz,如果用电脑下载,删除原来的下载文件,再将电脑下载好的linux-xxx.tar.gz文件复制到/root/即可。然后再次步骤6开始解压(注意切换回rpi-source文件所在目录,如果在这一步cd去了其它目录的话)。
12.然后,rpi-source文件会自动解压内核文件,然后自动configure,然后自动建立build快捷方式,然后,就完成了
下载方式二:
看看git有没有对应的源码
https://github.com/raspberrypi/linux
下载方式三:
去内核网站看看?
https://www.kernel.org/
参考链接
1.https://github.com/notro/rpi-source/wiki
2.http://elinux.org/Raspberry_Pi_Kernel_Compilation#Use_the_provided_compiler