“ linux-headers-3.7.5-1-ARCH”意味着什么软件包?


8

我正在调试一个封闭源代码的软件安装程序,该安装程序似乎对我的发行版有一些先入为主的想法。找不到后,安装将中止apt-get。它尝试运行的命令是:

apt-get -y -q install linux-headers-3.7.5-1-ARCH

我想“软件包名称”来自/usr/src,唯一的入口是linux-3.7.5-1-ARCH。是否有人对我应该使用pacman安装哪个软件包有任何有根据的猜测?

标头可能将用于编译自定义硬件的驱动程序。

这是安装日志中的一些相关文本:

注:必须针对Linux OS当前正在运行的内核的内核源构建Linux驱动程序。该脚本为您自动完成此任务。

注意:您必须安装Linux OS内核标头源文件。如果计划运行Jungo调试监视器,则可能还需要安装“ compat-libstdc ++”和“ libpng3”。

您的Linux当前正在运行以下内核版本:
3.7.5-1-ARCH

Answers:


8

您正在运行Arch Linux。据称pacman -Q -i linux-headers,软件包“ linux-headers”包含“用于构建linux内核模块的头文件和脚本”。构建linux内核时,会定义各种常量,这些常量可能是数字或字符串或您拥有的常量。一些可加载模块需要知道这些数字或字符串。“ linux-headers”中的文件应包含内核的所有特定于构建的数字,字符串等(在您的情况下为3.7.5-1版)。

您可以看到“ linux-headers”软件包拥有哪些文件: pacman -Q -l linux-headers

您可以以root用户身份安装软件包“ linux-headers”: pacman -S linux-headers

该脚本的“ apt-get”部分似乎假设您正在运行Debian或衍生产品。使用pacman安装linux-headers并查看其运行方式。


在尝试使VirtualBox来宾添加项与arch一起使用时,这对我有用。我还需要运行pacman -S dkms,因为尚未安装dkms,尽管我不确定100%是否有必要,因为VirtualBox安装并未提及不存在的任何错误。
abelito

1

您正在运行Arch Linux,它不使用apt-get作为包处理实用程序。Arch Linux改用pacman。

许多Linux发行版中的linux-headers软件包通常都包含Linux内核的C头文件(扩展名为.h的文件)。这些文件通常定义可以由其他程序和驱动程序使用的常量和函数。

通常,您需要内核头文件才能编译和安装内核的第三方驱动程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.