obj-m := sys-hook.o
sys-hook-objs := hook.o #由于我们的模块叫做hello-yf,所以写hello-yf-objs :=表示该模块由N个模块组成,例如hello-yf-objs := file1.o file2.o
KID :=~/android-kernel-2.6/goldfish
PWD := $(shell pwd) #表示当前Makefile所在的路径
ARCH=arm
CROSS_COMPILE=arm-eabi-
CC=$(CROSS_COMPILE)gcc
LD=$(CROSS_COMPILE)ld
all:
make -C $(KID) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=${PWD} modules
#M=表示在建立模块target的时候,makefile回归到我们模块程序的目录。
clean:
rm -rf *.o .cmd *.ko *.mod.c .tmp_versions *.order *.symvers
这个是我从网上参考别人的,编译通过了。感觉你的错误有两点:
obj-m := xxx.o
sys-hook-objs := hook.o由哪些模块组成没写。
按我说的这个改改,看可以吗?