编译Linux2.6.x内核驱动的makefile文件
#变量DRI_NAME MOD_NAME NOD_NAME分别设置伪驱动程序的名称,生成模块的名称和设备节点的名称
# 使用make install进行安装驱动需要root权限
# 使用make uninstall进行卸载驱动需要root权限
# 使用make clean清除多余的文件,包括生成的模块代码
#驱动名称
DRI_NAME :=demo
# 模块名称
MOD_NAME :=IMTI_DEMO
# 节点名称
NOD_NAME :=/dev/demo
obj-m :=$(DRI_NAME).o
KERNELDIR ?=/lib/modules/$(shell uname -r)/build
PWD ?=$(shell pwd)
default:
$(MAKE) -C ${KERNELDIR} M=${PWD} modules
#安装的伪代码
.PHONY:install uninstall clean
install:default
insmod demo.ko
mknod $(NOD_NAME) c `awk '$$2=="'${MOD_NAME}'" {print $$1}' /proc/devices` 0
#卸载的伪代码
uninstall:
rm -f $(NOD_NAME)
rmmod $(DRI_NAME)
#清理垃圾的伪代码
clean:
@rm -rf *.o *.ko .tmp_versions *~ Module.symvers .*.cmd *.mod.c