如何在 Beaglebone Black 上安装 linux 标头



我目前正在尝试为 Debian 版本 7 (3.8.13-bone47( 下的 Beaglebone Black Board 构建一个 LKM(Linux 内核模块(。每当我尝试下载 linux 标头时,我都会遇到问题......以下是我运行命令时控制台显示的内容sudo apt-get install linux-headers-$(uname -r)

root@beaglebone:/# sudo apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package linux-headers-3.8.13-bone47
E: Couldn't find any package by regex 'linux-headers-3.8.13-bone47'

我已经尝试更新和升级软件包:这并不能解决问题。如果有办法离线安装它,在哪里可以找到当前版本的存档?

提前感谢您的回答!

在目标上编译是一种完全有效且合法的操作模式。不是每个人都想为简单的内核模块编译或实验建立一个完整的 Linux 开发环境。这可能是浪费时间。

BeagleBone 对于此类工作来说非常强大,最新的工作映像具有可用的内核标头(内核版本 4.19.94,截至 2020-06-16(。

您可能需要更新本地 apt 索引,然后才能进行安装。以下命令对我有用:

sudo apt update
sudo apt install linux-headers-$(uname -r)

在目标上编译从来都不是正确的工作方式。您可以从此处克隆 Beaglebone 内核。列出该内核源代码的标签,我没有看到bone47版本。除非有特定原因坚持使用旧版本,否则我建议迁移到具有新内核的新映像。您可以从该 git 存储库签出所需的分支。

然后,您可以通过在命令行上指定 ARCH、CROSS_COMPILE 和 KDIR 标志,在构建内核模块后针对 PC 上的内核源代码交叉编译内核模块。

最新更新