1.问题描述

编译内核模块时,出现错误显示找不到/lib/modules/3.10.0-1127.el7.x86_64/build。

ls查看果然没有该目录,然后网上查资料说是需要安装对应的内核开发软件包。

原因:/lib/modules/3.10.0-1127.el7.x86_64/build没有指向正确的kernel source

 yum install kernel-devel-$(uname -r)

对应版本的内核开发包不存在……

直接安装一个开发包 yum install kernel-devel,安装的kernel-devel小版本与内核不一致。

结果还是不行,问题已经存在且不变。

2.解决方法

不折腾了,选择躺平!

换一台机器,然后发现可以通过yum install kernel-devel-$(uname -r)安装与内核版本一致的开发包。

备注说明:

本人用的centos7.8版本虚拟机出现以上问题,没有解决(猜测可能是和yum下载源相关,该源库中没有对应版本的kernel-devel软件包)。换成centos7.4操作系统之后,没有该问题。(也就是iso版本号为1908的镜像)

--------------------------------------------------------------------------------------------------------------

更新:

最近又发现了这个问题的解决办法,可以通过 yum update kernel来升级内核(这里我用的centos,并没有升级到很高的内核,还是3.10.xx)

比如我原本的3.10.0-1127升级到了3.10.0-1160,然后可以直yum install安装对应的内核开发包。

至此,问题应该算是解决了!!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐