前提:记得把虚拟机的内存和硬盘大小设置大点,不然容易在编译过程中硬盘空间不足。我的内盘大小是4G,硬盘大小是100G。
一、在www.kernel.org上选择要下载的内核版本,点击黄色区域直接下就可以了。也可以在清华大学开源软件镜像站:(这样下快些)
linux内核镜像:Linux内核下载
linux内核补丁镜像:Linux内核补丁下载
二、解压文件
tar -xzf linux-6.1.67.tar.gz#注意文件名
cd linux-6.1.67
tar -xzf ../patch-6.1.67-rt23.patch.gz| patch --forward -p1
三、安装依赖库
sudo apt-get update
sudo apt-get install libncurses5-dev
sudo apt-get install build-essential openssl
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install openssl
sudo apt-get install libssl-dev
sudo apt-get install libelf-dev
如果还有报错,查看一下是不是还缺少其他依赖库就行了.
四、配置内核编译工作
cd /usr/src/linxu-6.1.67
sudo make mrproper
sudo make clean
sudo make menuconfig
sudo make menuconfig之后会出现一个界面,因为不知道怎么弄直接exit就可以了。
五、编译内核
sudo make bzImage
这个过程有点久,可以等一下。在这个过程可能会出现错误,出现错误执行下面指令。
sudo gedit .config
进入文件将以下红线全部置空,然后再重新编译执行sudo make bzImage命令。
成功后
六、编译和安装modules
mk-build-deps
sudo make
sudo make install
sudo make modules install
这个过程也挺久的。在make 环节可能出现文件代码错误,可去官网上找到源代码进行更改。
七、执行完后更新grub菜单。
sudo update-grub
执行完后重启,可在/lib/modules目录下看是否存在对应的内核名文件。在重启时按shift可进入grub菜单进行更换内核版本
这样就编译完成了。