BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #10716同步于 2011/5/31
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

驱动程序的makefile问题

cxj1125
2011/5/31镜像同步1 回复
下面是一个设备驱动程序的makefile文件的主体代码: # Modify path if required. include $(CN18XX_ROOT)/driver/src/driver.mk # Setup compilation flags here # WARNINGS = -Wall -Wuninitialized -Wunused-function -Werror-implicit-function-declaration INCLUDE += -I. -I$(SUBDIRS)/../osi \ -I$(SUBDIRS)/../include -I$(SUBDIRS) EXTRA_CFLAGS += -D__SMP__ -O2 -finline-functions $(INCLUDE) $(WARNINGS) default: all OBJS += cn18xx_linux.o \ cn18xx_main.o \ ../osi/request_manager.o \ ../osi/response_manager.o \ # The driver object file obj-m := cn18xx_drv.o cn18xx_drv-y := $(OBJS) all: $(MAKE) -C $(kernel_source) SUBDIRS=`pwd` modules 上述驱动的makefile文件中,$(MAKE) -C $(kernel_source) SUBDIRS=`pwd` modules这句进入了内核目录,但是怎么就能根据这一句就生成来驱动的.ko模块文件呢? 还有OBJS中的各种.o文件是怎么根据INCLUDE中各.c文件生成的呢? 驱动中的makefile怎么和内核相结合呢?
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
ArmStrong机器人#1 · 2011/6/7
$(MAKE) -C $(kernel_source) 这个等同于在kernel_source 里面进行编译,只不过传进去参数SUBDIRS=。。。。 【 在 cxj1125 (system) 的大作中提到: 】 : 下面是一个设备驱动程序的makefile文件的主体代码: : # Modify path if required. : include $(CN18XX_ROOT)/driver/src/driver.mk : ...................