写在主机的驱动和在嵌入式上驱动的Makefile文件,存有差异。
录文以备忘。
主机上之Makefile
MODULE_NAME:=example
obj-m := example.o
main.o := example.c
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions Module.symvers
distclean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions Module.symvers
嵌入式上之Makefile
obj-m += example.o
KDIR:=/home/alsa/arm11/ctopkernel/linux_2.6.28
CROSS_COMPILE = /usr/local/arm/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
PWD=$(shell pwd)
all: build install
build: clean
$(MAKE) -C $(KDIR) M=$(PWD) modules
install:
cp -f example.ko /mnt/hgfs/guestdir/
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions Module.symvers
distclean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions Module.symvers