Linux内核模块编译
发布时间:2020-12-14 00:59:28 所属栏目:Linux 来源:网络整理
导读:我尝试编译简单的 linux内核模块: #include linux/module.h #include linux/kernel.h int init_module(void){ printk("Hello world 1.n"); return 0;}void cleanup_module(void){ printk(KERN_ALERT "Goodbye world 1.n");} 我的makefile: obj-m = testm
我尝试编译简单的
linux内核模块:
#include <linux/module.h> #include <linux/kernel.h> int init_module(void) { printk("Hello world 1.n"); return 0; } void cleanup_module(void) { printk(KERN_ALERT "Goodbye world 1.n"); } 我的makefile: obj-m = testmodule.o KVERSION = $(shell uname -r) all: make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules clean: make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean 现在我的.c文件中没有错误. 但是当我在终端尝试make时:make:没有什么可以为’all’做的. 怎么了? 谢谢. 解决方法
makefile中的默认命令是
make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules 这指示make到cd / to / modules / $(KVERSION)/ build并运行 make module m=YOUR_CURRENT_DIR 反过来,makefile没有找到任何事情要做.据推测,makefile期望在当前目录中找到一些特定的结构. 您需要更仔细地阅读指导您设置此makefile的任何说明. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |