一文说透Linux编译特定内核版本的方法(ubuntu和树莓派)

本文详细介绍了如何在Ubuntu和树莓派环境中分别编译5.9.0和4.14.y内核版本,包括安装依赖、配置、编译和安装过程。特别强调了网络支持和无线驱动的编译步骤。
摘要由CSDN通过智能技术生成

更多内容在

在做开发的时候,我们可能会针对某个内核版本进行驱动的编写。这个时候就需要把版本编译到这个特定的内核版本。本文介绍ubuntu和树莓派两种环境系统的内核编译方式

Ubuntu:

已编译到5.9.0内核为例

1 将内核安装包和内核配置config放到虚拟机或PC机下

2 更新apt源,并安装编译所需的依赖包

3 解压5.9.0内核安装包,将解压的文件夹移动到/usr/src/路径下

4 执行编译内核

注:network support ——》wireless ——》主要是第一个要置y,表示build in,把cfg80211编进内核。如果要对wifi驱动进行开发的话,这个编译是必须的

在menuconfig界面选择load,加载刚才导入的.config文件,即是最终使用的配置,无需做另外的内核裁剪,exit退出后

5 执行make -j3进行编译

6 安装内核

7 修改默认启动的grub配置

树莓派

1 树莓派上以编译4.14.y内核版本为例,首先从树莓派官网上下载rapsi的image,从linux内核上下载4.14.y的内核代码

2 在本地电脑安装成功树莓派imager后,双击打开,选择要安装的树莓派原生系统,并将SD卡插入到电脑上。选择烧录到对应的SD卡中即可

3 烧录树莓派Img

4 启动树莓派,安装linux Kernel编译需要的工具并编译kernel

将上面通过imager制作的镜像SD卡插到树莓派卡槽中,启动树莓派,然后会在屏幕上面进行一些简单的安装,一直点next下一步即可。完成后,树莓派桌面系统正式安装完成。在树莓派桌面系统中,打开bash 终端。按以下命令安装编译tools以及下载内核并编译:

安装gcc8

sudo apt-get install gcc-8 g++-8

进入/usr/bin目录,删除连接到gcc-10 gcc++-10的软连接,然后重新建立新的软连接到gcc-8和g++-8

sudo rm -f gcc g++

sudo ln -s gcc-8 gcc

sudo ln -s gcc++-8 g++

执行gcc –version查看版本是否成功

5 把4.14的内核上传到linux文件夹

chmod -R 777 linux

cd linux

make bcmrpi3_defconfig

make -j4 Image modules dtbs

以上编译成功后,安装替换kernel到/boot

sudo make modules_install

sudo cp arch/arm64/boot/dts/broadcom/*.dtb /boot/

sudo cp arch/arm64/boot/dts/overlays/*.dtb* /boot/overlays/

sudo cp arch/arm64/boot/dts/overlays/README /boot/overlays/

sudo cp arch/arm64/boot/Image /boot/kernel8.img

重启系统,查看是否是编译的kernel版本

sudo reboot

uname -a

树莓派的官网也有对应的说明,链接如下

https://www.raspberrypi.com/documentation/computers/linux_kernel.html

  • 14
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿与代码

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值