Debian 用 dpkg 管理软件包,内核也一样,所以有专门的内核编译方式,可以直接生成 deb 包。
获取内核源码
wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.28.tar.xz
tar -xvf *.tar.gz
cd linux-*
安装必要的工具
sudo apt install gdb bison m4 autoconf automake libtool libncurses5-dev build-essential fakeroot
配置参数
使用当前系统编译时的配置
cp /boot/config-`uname -r` ./.config
make olddefconfig
编译
官方最新的编译方法是 make deb-pkg,它会在上层目录中生成相关 deb 包。以前版本似乎是用 make-kpkg。
fakeroot make -j4 deb-pkg
报错:
fatal error: gelf.h: 没有那个文件或目录
少哪个装哪个
sudo apt install libelf-dev
继续。。这破电脑真的慢。。。早知道不用 olddefconfig 了,驱动模块太多了。花了四个多小时。
然后,就可以像其他 deb 包一样安装了
sudo apt install ./linux-headers-5.15.28_5.15.28-1_amd64.deb
./linux-image-5.15.28_5.15.28-1_amd64.deb