文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>驱动makefile

驱动makefile

时间:2009-03-24  来源:zhaoyuaini

简单的MAKEFILE文件 obj-m := file.o
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD ?= $(shell pwd)
defalult:
  make -C ${KERNELDIR} M=${PWD} modules
install:
   insmod file.ko
uninstall:
   rmmod file.ko
clear:
   make -C ${KERNELDIR} M=${PWD} clean
  obj-m := file.o指定需要产生的KO模块需要的.O文件 KERNELDIR := /lib/modules/2.6.23.1-42.fc8/build $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
-C $(KERNELDIR)  -C 用来改变make的执行目录,即在KERNELDIR(内核源码目录)下找到顶层的makefile
M=$(PWD) modules  这个是使makefile在试图生成模块之前,回到模块源码目录.
为什么编译器要去内核源码目录下转一圈那? 因为驱动编译成模块,其实也是内核的一个部分,那么编译前就必须找到相应的内核版本及其相应的关系,如相关的头文件和System.map函数分配地址。 M=$(PWD) modules 后面的modules表示在回到源目录后modules目标指向obj -m变量中指定的模块。   如果产生KO的.O文件大于一个 还可以下面的方法来写 obj-m := modules.0 module-objs := file1.o file.o 表示该KO又file1.o file.o两个文件生成  
相关阅读 更多 +
排行榜 更多 +
骑战烈火之剑作弊菜单版

骑战烈火之剑作弊菜单版

角色扮演 下载
越狱模拟器无限金币版

越狱模拟器无限金币版

角色扮演 下载
破烂水手手机版

破烂水手手机版

冒险解谜 下载