gpt4 book ai didi

c - Linux内核模块编译

转载 作者:IT王子 更新时间:2023-10-29 00:31:16 27 4
gpt4 key购买 nike

我尝试编译简单的 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");
}

我的生成文件:

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: Nothing to be done for `all'.

怎么了?

谢谢。

最佳答案

makefile 中的默认命令是

make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules

指示 make 到/lib/modules/$(KVERSION)/build 并运行

make module m=YOUR_CURRENT_DIR

反过来,该 makefile 找不到任何可做的事情。据推测,该 makefile 期望在您的当前目录中找到一些特定的结构。

您需要更仔细地阅读引导您设置此 makefile 的任何说明。

关于c - Linux内核模块编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4063632/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com