KERNELDIR ?= /home/franky/linux-2.6.35 #这是你的内核源码的地址
PWD := $(shell pwd) #当前编译地址
CROSS_COMPILE = /home/franky/toolchain/bin/ #交叉编译工具的地址
CC = $(CROSS_COMPILE)arm-none-linux-gnueabi-gcc #交叉编译工具的名字
obj-m := led_drv.o #模块的名字
all:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules #先进入
KERNELDIR目录进行编译,然后返回
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko
首先将目录改变到-C选项指定的位置(即内核源代码目录,其中有内核的顶层makefile文件),M=选项让该makefile在构造modules目标之前返回到当前目录。