我试着编译这段代码:
#include <linux/module.h>
#include <linux/printk.h>
int init_module(void) {
printk(KERN_INFO "Hello World");
return (0);
}
使用以下Makefile:
obj-m += hello-1.c
all:
make -C /lib/modules/$(shell uname -r)/build=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
然后它显示了这个错误消息:
make -C /lib/modules/5.15.90.1-microsoft-standard-WSL2/build=/home/vers modules
make[1]: *** /lib/modules/5.15.90.1-microsoft-standard-WSL2/build=/home/vers: No such file or directory. Stop.
make: *** [Makefile:4: all] Error 2
我正在尝试将Linux内核编译到我的Debian WSL 2。我试过执行sudo apt-get install linux-headers-generic
,但还是失败了。
编辑:我安装Ubuntu 20.04按照这个https://unix.stackexchange.com/questions/594470/wsl-2-does-not-have-lib-modules
和它的给予我新的错误
make -C /home/vers/gcc/WSL2-Linux-Kernel M=/home/vers/gcc modules
make[1]: *** /home/vers/gcc/WSL2-Linux-Kernel: No such file or directory. Stop.
make: *** [Makefile:4: all] Error 2
1条答案
按热度按时间3htmauhk1#
您复制了错误的信息。
应
就像你对
clean
规则所做的那样。