孔志奎

孔志奎的博客

他的个人主页  他的博客

Linux 2.6内核驱动模块Makefile模版

孔志奎  2012年04月20日 星期五 17:03 | 1751次浏览 | 0条评论

这个模版非常简洁,单目录下增减源文件时无需修改。

注意模块的编译有两次make调用的过程,这两次过程之间Makefile中定义的变量是无法自动传递的,所以必须通过命令行来传递。

 

KVERS = $(shell uname -r)


# Kernel modules
MODNAME=test
obj-m := $(MODNAME).o

OBJS = $(patsubst %.c, %.o, $(wildcard *.c))


# Specify flags for the module compilation.
EXTRA_CFLAGS=-g -O0 -I$(M)/inc

all:
    make -C /lib/modules/$(KVERS)/build $(MODNAME)-objs="$(OBJS)" M=$(CURDIR) modules

clean:
    make -C /lib/modules/$(KVERS)/build M=$(CURDIR) clean

 

参考资料:

《Linux设备驱动开发详解》第二版,宋宝华

内核Document/kbuild相关文档

 

博客同步发布于CSDN: http://blog.csdn.net/kevin1078/article/details/7482008

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !

暂时没有评论

Zeuux © 2024

京ICP备05028076号