给Openwrt读的Makefile文件的编写 ----我的笔记(2.4)

在openwrt/package/目录下创建一个软件包名字对应的文件夹然后里面Makefile和src,src中有Makefile和.c文件。这两个Makefile是不一样的。内部的Makefile主要是验证文件是否正确编译。
   第二步,对于第一个Makefile来说就是建立与openwrt联系,
          (1)引入文件 
    OpenWrt使用三个makefile的子文件,分别为: 
include $(TOPDIR)/rules.mk    //位于文件开头
  include $(INCLUDE_DIR)/kernel.mk //软件包为内核时不可缺少
  include $(INCLUDE_DIR)/package.mk//软件包基本信息配置完成再引入。
 (2)编写软件包的基本信息
这些软件包的信息均以PKG_开头,其意思和作用如下:  
         PKG_NAME表示软件包名称,将在menuconfig和ipkg可以看到。 
PKG_VERSION表示软件版本号。 
PKG_RELEASE表示Makefile的版本号 
PKG_SOURCE表示源代码的文件名。  
PKG_SOURCE_URL表示源代码的下载网站位置。@SF表示在sourceforge网站,@GNU表示在GNU网站,還有@GNOME、@KERNEL。獲取方式可以為:git、svn、cvs、hg、bzr等。有關下載方法可參考$(INCLUDE_DIR)/download.mk和$(SCRIPT_DIR)/download.pl。  
PKG_MD5SUM表示源代码文件的效验码。用于核对软件包是否正确下载。
   PKG_CAT表示源代码文件的解压方法。包括zcat, bzcat, unzip等。  
        PKG_BUILD_DIR表示软件包编译目录。它的父目录为$(BUILD_DIR)。如果不指定,默认为$(BUILD_DIR)/$( PKG_NAME)$( PKG_VERSION)。
還有一些有關源代碼的定義。
PKG_SOURCE_SUBDIR
PKG_SOURCE_PROTO
PKG_SOURCE_MIRROR
PKG_MIRROR_MD5SUM
PKG_SOURCE_VERSION
3、编译包定义 
 用户程序和内核模块的定义不一样。用戶態軟件包使用Package,內核模塊使用KernelPackage。 
3.1用户程序编译包定义
用户程序的编译包以Package/开头,然后接着软件名,在Package定义中的软件名可以与
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值