Openwrt下的makefile文件、编译

本文介绍了一个名为ccon_ap的内核模块在OpenWRT环境下的Makefile配置示例,包括Makefile的具体内容、对应的目录结构及如何进行编译配置。该示例适用于希望了解OpenWRT环境下Makefile编写的读者。
摘要由CSDN通过智能技术生成

openwrt下的makefile文件,不同于普通linux下的makfile文件。

现整理一份在openwrt下写过的makefile,供以后参考。

 

一、Makefile文件

项目名称为ccon_ap。

1.1 代码

 

# Kernel module ccon_ap
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=ccon_ap
PKG_RELEASE:=1
include $(INCLUDE_DIR)/package.mk
define KernelPackage/ccon_ap 
	SUBMENU:=Other modules
	NDS:=@TARGET_octeon
	TITLE:=Support Module for ccon_ap
	AUTOLOAD:=$(call AutoLoad,81,ccon_ap)
	FILES:=$(PKG_BUILD_DIR)/ccon_ap/ccon_ap.$(LINUX_KMOD_SUFFIX)
endef
 define Build/Prepare
	mkdir -p $(PKG_BUILD_DIR)
	$(CP) -R ./src/* $(PKG_BUILD_DIR)/
endef
 define Build/Compile
	$(MAKE) -C "$(LINUX_DIR)" \
		CROSS_COMPILE="$(TARGET_CROSS)" \
	ARCH="$(LINUX_KARCH)" \
	SUBDIRS="$(PKG_BUILD_DIR)/ccon_ap" \
	EXTRA_CFLAGS="-g $(BUILDFLAGS)" \
	modules
endef
$(eval $(call KernelPackage,ccon_ap))

 

1.2 对应的目录结构

 

      ccon_ap目录 -> src目录、Makefile(上面的) -> ccon_ap目录 -> *.h *.c Makefile(见下面)

      目录结构需按上面结构存放,否则需要修改上面的Makefile。

 

      后面的Makefile,只需要列出要生产的.o文件名,如下:

 

obj-m := ccon_ap.o
ccon_ap-objs := ap_main.o other.o

 

二、编译

2.1 配置

      在指定目录下,执行make menuconfig:

            Kernel modules -> Other modules -> kmod-ccon_ap -> 选中(S)

2.2 编译

      编译:make  (如果编译出错,make V=s查看调试信息; 参数 make -j4,是使用4个CPU编译) 

      清除:make clean

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值