在 Debian 上,我需要构建一个带有内核头文件的驱动程序。
$ uname -r
5.10.110
所以我尝试了最简单的方法:
$ sudo apt install linux-headers-$(uname -r)
E: Unable to locate package linux-headers-5.10.110
我的/etc/apt/sources.list
:
deb http://mirrors.163.com/debian bullseye main contrib non-free
deb-src http://mirrors.163.com/debian bullseye main contrib non-free
deb http://mirrors.163.com/debian-security bullseye-security main contrib non-free
deb-src http://mirrors.163.com/debian-security bullseye-security main contrib non-free
deb http://mirrors.163.com/debian bullseye-updates main contrib non-free
deb-src http://mirrors.163.com/debian bullseye-updates main contrib non-free
# This is added by me
deb-src http://deb.debian.org/debian bullseye main
- 如何安装
5.10.110
版本的内核头文件? - 哪个其他版本可能是安全的赌注符合
5.10.110
并可用于自定义驱动程序编译?
答案1
您的内核不是 Debian 内核,因此您应该从获得内核的任何地方安装内核头文件。
您也许可以使用较新的 5.10 版本,但您将无法使用 Debian 打包的内核头文件 — 它们使用不同的 ABI 命名方案(当前为 5.10.0-21),因此您将无法使用无法使用它们构建将加载到 5.10.110 内核上的内核模块。
除非您有特定原因使用 5.10.110 内核,否则最好的选择是安装 Debian 内核包和相应的标头,并使用该内核:
sudo apt install linux-image-amd-64 linux-headers-amd64
(amd64
酌情更换)。