Centos /lib/modules/<;版本>/构建/不存在

Centos /lib/modules/<;版本>/构建/不存在,centos,linux-device-driver,Centos,Linux Device Driver,我试图写一个非常基本的“Hello World”设备驱动程序示例,它在任何设备驱动程序实现入门课程中都有介绍。我的makefile如下所示: obj-m := hello.o KDIR := /lib/modules/$(shell uname -r)/bulid PWD := $(shell pwd) all: make -C $(KDIR) M=$(PWD) modules 当我使用make命令时,它显示/lib/modules/version\u no/build/不存在。因此,

我试图写一个非常基本的“Hello World”设备驱动程序示例,它在任何设备驱动程序实现入门课程中都有介绍。我的makefile如下所示:

obj-m := hello.o

KDIR := /lib/modules/$(shell uname -r)/bulid

PWD := $(shell pwd)

all:
 make -C $(KDIR) M=$(PWD) modules

当我使用make命令时,它显示/lib/modules/version\u no/build/不存在。因此,我输入了目录/lib/modules/version\u no,发现有一个目录构建,但如果使用ls命令,它将以红色打印,这意味着该目录已被弃用。它包含一个指向../../../usr/src/version_no的链接,但令我惊讶的是,该链接中的版本号和/usr/src/中实际文件夹的名称并不相同。有人能指出问题所在吗?我使用的是centos 6.1。

这是因为您尚未下载特定内核版本的linux头文件

假设您的内核版本是
4.15.0-32-generic
,请使用
sudo apt install linux-headers-4.15.0-32-generic

以你的情况来说,你可以得到它
yum-install-kernel-devel-kernel-headers

更新了答案