[已解决]openSUSE Leap 42.1 提示缺少 version.h 文件

我在编译一个东西

./configure

提示:

checking for directory with kernel source... /usr/src/linux
checking for kernel version... The file /usr/src/linux/include/linux/version.h does not exist.
Please, install the package with full kernel sources for your distribution
or use --with-kernel=dir option to specify another directory with kernel
sources (default is /usr/src/linux).

编译的东西是这个
alsa-driver-0.9.1.tar.bz2

请问该如何解决?

在软件源里面可以安装好的编译包,自己编译就出现这样的错误, 然后在 /usr/src/linux、 就没找到这个目录 / / 好吧, 我对 linux 不熟悉 //、求大神

试试
sudo zypper in kernel-devel

安装了 / 但是结果我没去试 ,我用的是别人编译好的文件 /,还是谢拉

@hehehaha

这是由于 Linux 内核改动了 version.h 的位置。

你说的那个 /usr/src/linux/include/linux/version.h 是老版本的位置。

新版本的位置:

3.x 内核可以去 /usr/src/linux/include/generated/uapi/version.h 看看

4.x 内核可以看看 /usr/src/linux/include/uapi/linux/dvb/version.h

然后对应做一个软链接就好了

sudo ln -sf /usr/src/linux/include/uapi/linux/dvb/version.h /usr/src/linux/include/linux/version.h

要是再变的话,也可以

find /usr/src/linux -name “version.h”

自己找一下。