Linux 设备驱动程序教程 make

Linux 设备驱动程序教程 make

您好,我对内核开发非常陌生,正在关注这个教程

当我尝试制作模块时:

    #include <linux/init.h>
    #include <linux/module.h>
    MODULE_LICENSE("Dual BSD/GPL");
    static int hello_init(void)
    {
     printk(KERN_ALERT "Hello, world\n");
     return 0;
    }
    static void hello_exit(void)
    {
     printk(KERN_ALERT "Goodbye, cruel world\n");
    }
    module_init(hello_init);
    module_exit(hello_exit);

使用书中写的“make”和makefile。

    obj-m := hello.o

我收到错误

make: *** 无目标。停止。

请帮忙并提前致谢

答案1

一个样品Makefile

obj-m += hello.o

all:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

应安装linux-headers(内核头文件)和(开发工具)。build-essential

相关内容