如何在Linux上安装内核头文件

如何在Linux上安装内核头文件,第1张

当在编译一个设备驱动模块时,需要在系统中安装内核头文件。内核头文件同样在编译与内核直接链接的用户空间程序时需要。当在这些情况下安装内核头文件时,必须确保内核头文件精确地与当前内核版本匹配(比如:3.13.0-24-generic)。

如果内核是发行版自带的内核版本,或者使用默认的包管理器的基础仓库升级的(比如:apt-ger、aptitude或者yum),也可以使用包管理器来安装内核头文件。

另一方面,如果下载的是kernel源码并且手动编译的,可以使用make命令来安装匹配的内核头文件。

使用apt-get命令来安装匹配的内核头文件:

1、首先,使用dpkg-query命令检查是否有可用的内核头文件。

$ dpkg-query -s linux-headers-$(uname -r)

dpkg-query: package 'linux-headers-3.11.0-26-generic' is not installed and no information is available

2、接着使用下面的命令安装匹配的内核头文件。

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

3、验证头文件是否成功安装。

$ dpkg-query -s linux-headers-$(uname -r)

Package: linux-headers-3.11.0-26-genericStatus: install ok installed

4、Debian、Ubuntu、Linux Mint默认头文件在/usr/src下。

使用yum命令来安装匹配的内核头文件:

1、首先,用下面的命令检查系统是否已经安装了头文件。如果下面的命令没有任何输出,这就意味着还没有头文件。

$ rpm -qa | grep kernel-headers-$(uname -r)

2、接着用yum命令安装头文件。这个命令会自动找出合适的头文件并安装。

$ sudo yum install kernel-headers

3、验证包安装的状态。

$ rpm -qa | grep kernel-headers-$(uname -r)

kernel-headers-3.10.0-123.9.3.el7.x86_64

4、Fedora、CentOS 或者 RHEL上默认内核头文件的位置是/usr/include/linux。

警示:新手接触没几天,谨慎!!!

有个程序不兼容新内核5.7的,所以更换为最新版本长期支持内核。先安装内核和头文件,然后修改或重新升成引导。修改地方可以百度

1.安装长期支持内核和头文件

2.重新生成引导文件。把安装系统时升成引导文件的命令重新来一遍,如果没有修改过一般是这个

3.没有图形界面直接重启。有图形界面尤其是N卡私有驱动,重新装一遍驱动(不清楚哪个文件的问题,所以我全部重新装了,我是N卡。如果没有安装重启进不来系统,又进不去命令行界面的,拿live系统挂载系统装一下这个驱动:我就是。。。)A卡不知道

4.重启

1、你的字符设备驱动是单独一个设备模块吗?

一般情况下头文件是全的,检查一下你的Makefile中kernel目录指定得是否正确:

KDIR

:=

/lib/modules/`uname

-r`/build

或者:

KERNEL

:=

/usr/src/linux-source-2.6.32

2、如果要安装全部源码的话先...1477


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8620475.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存