make: *** /lib/modules/3.10.0-327.el7.x86_64/build: 没有那个文件或目录。 停止。

时间:2021-06-25 12:12:43

1、问题:

[root@localhost]# make
make -C /lib/modules/3.10.0-327.el7.x86_64/build M=/home/csri/poc/adore modules
make: *** /lib/modules/3.10.0-327.el7.x86_64/build: 没有那个文件或目录。 停止。
make: *** [adore] 错误 2

 

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

 

3、解决:

先看一下指向了哪里:

[root@localhost 3.10.0-327.el7.x86_64]# pwd /lib/modules/3.10.0-327.el7.x86_64
[root@localhost 3.10.0-327.el7.x86_64]# ll
总用量 2720
lrwxrwxrwx.  1 root root     38 4月  16 19:58 build -> /usr/src/kernels/3.10.0-327.el7.x86_64

进入/usr/src/kernels/下看有没有相应的内核开发包,没有则下载:yum install kernel-devel-$(uname -r)

但我的机器上显示:没有可用软件包 kernel-devel-3.10.0-327.el7.x86_64(别用yum search找不同版本的)

所以就在https://buildlogs.centos.org/c7.1511.00/kernel/20151119220809/3.10.0-327.el7.x86_64/  下载

放到/下解压rpm2cpio kernel-devel-3.10.0-327.el7.x86_64.rpm | cpio -div ,即会在/usr/src/kernels下出现3.10.0-327.el7.x86_64

 

(没有这一步应该已经行了)删除/lib/modules/3.10.0-327.el7.x86_64下的build,然后建立软连接让build -> /usr/src/kernels/3.10.0-862.2.3.el7.x86_64/

ln -sv /usr/src/kernels/3.10.0-327.el7.x86_64/ /lib/modules/3.10.0-327.el7.x86_64/build