aptitude install build-essential如此會在 /usr/src 安裝好編繹 kernel module 的環境
aptitude install linux-headers-2.6.30-1-686
aptitude install linux-headers-2.6.30-1-common
aptitude install linux-kbuild-2.6.30
接著按照 LLD3 上寫的第一個範例 hello.c
#include為它編寫一個 Makefile
#include
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);
ifneq ($(KERNELRELEASE),)obj-m := hello.oelseKERNELDIR ?= /usr/src/linuxPWD := $(shell pwd)RM = rm -rfdefault:$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
endifclean:
$(RM) *.ko *.o *.mod.c .*.cmd Module.* modules.* .tmp_versions
接著下 make 就可以編出 hello.ko 了 :D
沒有留言:
張貼留言