在ubuntu V16.04 中 编译树莓派2 linu内核

编译树莓派内核的目标主要是实现定制内核。也可以学习linux驱动开发。
树莓派的内核编译可以在树莓派上编译也可以在虚拟机上编译,
树莓派上编译时,一定要注意树莓派发热问题,非常严重,必须要加散热风扇。
先检查更新
#sudo apt-get update
#sudo apt-get upgrade
如果上面两条命令运行失败,则需要检查网络设置
安装git
#sudo apt-get install git -y
配置git 并把生成的rsa公钥加入github 的账号中(只有这样才能clone )
开始克隆内核源码及编译器
#cd ~
#sudo git clone git@github.com:raspberrypi/linux.git
#sudo git clone git@github.com:raspberrypi/tools.git
通过上面的3个命令就可以在用户目录下克隆内核源码及编辑器,这里最好是开2个终端克隆
下面开始配置环境变量
#cd ~
#sudo vim .bashrc //
在.bashrc 最下面 加入编译器路径
export PATH=$PATH:/home/langang/tools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin
更新环境变量
#source .bashrc
下面开始手动配置Make 文件
#cd ~/linux //进入内核源码目录
#sudo cp Makefile Makefile.bak //备份
#sudo vim Makefile +255 //打开Make文件 并跳转到第255行
把ARCH 和 CROSS_COMPILE 改为如下图所示
指定编译器完整路径

开始编译内核
#cd ~/linux
# KERNEL = kernel7
#sudo make bcm2709_defconfig //配置.config文件
#sudo make zImage modules dtbs -j6 //开始编译 时间非常长 -j6是CPU的线程数*1.5 提高编译速度
注意!参数 ARCH 和 CROSS_COMPILE 我们已经手动修改Makefile文件,所以不需要配置
如果没有错误,编译完成,那么开始更新树莓派内核
下面开始给树莓派安装新的内核
取出插在树莓派开发板上面的TF(TF内已经有之前的系统),通过读卡器插入PC。
查看TF卡分配的盘符,
#lsblk //查看
执行后效果如下

其中 sdb1为boot ,sdb2为文件系统空间
现在把这两个盘符挂载在虚拟机的文件系统中
#cd ~/linux
#sudo mkdir mnt //在内核源码中新建文件夹
#sudo mkdir mnt/fat32 mnt/ext4 //在mnt文件夹中建立fat32和ext4文件夹
#sudo mount /dev/sdb1 mnt/fat32 //挂载
#sudo mount /dev/sdb2 mnt/ext4 //挂载
接下来安装模块
#cd ~/linux
#sudo make INSTALL_MOD_PATH=mnt/ext4 modules_install //指定安装路径 开始安装
接下来的操作就是拷贝内核,和一些文件(可能是动态链接库)
#sudo cp mnt/fat32/$KERNEL.img mnt/fat32/$KERNEL-backup.img //备份之前的内核镜像
#sudo cp arch/arm/boot/zImage mnt/fat32/$KERNEL.img //拷贝新的内核镜像
#sudo cp arch/arm/boot/dts/*.dtb mnt/fat32/
#sudo cp arch/arm/boot/dts/overlays/*.dtb* mnt/fat32/overlays/
#sudo cp arch/arm/boot/dts/overlays/README mnt/fat32/overlays/
#sudo umount mnt/fat32 //取消挂载
#sudo umount mnt/ext4 //取消挂载

现在新的内核已经安装在这个TF卡中了,重新把TF插入树莓派即可运行新的内核。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值