最近在OpenSUSE要开发一个内核模块,一开始执行编译时报错:
make[1]: *** /lib/modules/4.12.14-lp151.28.91-default/build/: 没有那个文件或目录。 停止。
看起来是没有内核模块和源码导致的,于是执行了下面的安装:
sudo apt install kernel-source devel_kernel
还是报错,然后又执行一下命令创建了内核目录的软链接:
sudo ln -s /usr/src/`uname -r` /lib/modules/`uname -r`/build
执行后,继续报错:
Building modules, stage 2.
MODPOST 0 modules
/bin/sh: scripts/mod/modpost: 没有那个文件或目录
make[2]: *** [scripts/Makefile.modpost:94:__modpost] 错误 127
make[1]: *** [Makefile:1579:modules] 错误 2
然后,再进入到内核目录中 /usr/src/`uname -r` ,执行以下命令:
sudo make oldconfig && sudo make prepare
然后,再编译就正常了,记录在这里备忘,也供大家参考。
评论区