现在的位置: 首页 > 综合 > 正文

驱动模块的Makefile——ARM LINUX

2017年12月03日 ⁄ 综合 ⁄ 共 634字 ⁄ 字号 评论关闭

示例一:

KERNELDIR= /home/wenhao/platform/linux-2.6.34

PWD := $(shellpwd)

CROSS_COMPILE = /usr/local/arm/4.3.2/bin/arm-linux-

CC   = $(CROSS_COMPILE)gcc

obj-m := key.o 

modules:

   $(MAKE) -C $(KERNELDIR) M=$(PWD) modules

clean:

   rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions

.PHONY: modulesclean

示例二(我用过的,但是总觉得不舒服)

obj-m           +=mem_driver.o
#产生hello模块的目标文件  

CURRENT_PATH        :=$(shell pwd)
   #模块所在的当前路径  

LINUX_KERNEL        :=$(shell uname -r)
#Linux内核源代码的当前版本  

LINUX_KERNEL_PATH   :=/usr/src/linux-headers-$(LINUX_KERNEL)
#Linux内核源代码的绝对路径  

all:  

make -C $(LINUX_KERNEL_PATH) M=$(CURRENT_PATH) modules    #编译模块  前面必须是tab

clean:  

make -C $(LINUX_KERNEL_PATH) M=$(CURRENT_PATH) clean     #清理  

  

抱歉!评论已关闭.