Makefile:
ARCH=arm
CROSS_COMPILE=arm-linux-gnueabihf-
obj-m += test.o
KDIR := /home/workspace/M6G2C/linux-src ---------- 内核地址
PWD = $(shell pwd)
all:
$(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
rm -rf *.o
test.c
#include <linux/module.h>
#include <linux/init.h>
static int __init hello_init(void)
{
printk("Hello, I'm ready!\n");
return 0;
}
static void __exit hello_exit(void)
{
printk("I'll be leaving, bye!\n");
}
module_init(hello_init);
module_exit(hello_exit);
命令
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
需要指定内核为arm架构 以及 交叉编译器,否则默认为x86