推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

OpenWrt增加软件包方法

更新时间:2019-11-22 16:08:29 大小:44K 上传用户:xuzhen1查看TA发布的资源 标签:openwrt 下载积分:0分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

OpenWrt 增加软件包方法

OpenWrt 是一个比较完善的嵌入式Linux 开发平台,在无线路由器应用上已有

100 多个软件包。人们可以在其基础上增加软件包, 以扩大其应用范围。OpenWrt

在增加软件方面使用极其方便,按照OpenWrt 的约定就可以很简单完成。

加入的软件包可以是网上可下载的开源软件或自行开发的软件。為加入软

件包需要在package 目錄下创建一个目录,以包含软件包的各种信息和与

OpenWrt 建立联系的文件。然后创建一个Makefile 与OpenWrt 建立联系,

Makefile 需要遵循OpenWrt 的约定。另外可以創建一個patchs 目錄保存patch

文件,對下載的源代碼進行適量修改。下面主要介紹Makefile 的基本約定。

1、引入文件

OpenWrt 使用三个makefile 的子文件,分别为:

include $(TOPDIR)/rules.mk

include $(INCLUDE_DIR)/kernel.mk

include $(INCLUDE_DIR)/package.mk

由這些makefile 子文件確立軟件包加入OpenWrt 的方式和方法。

$(TOPDIR)/rules.mk 一般在Makefile 的開頭,$(INCLUDE_DIR)/kernel.mk 文件

對於軟件包為內核時不可缺少, $(INCLUDE_DIR)/package.mk 一般在軟件包的

基本信息完成後再引入。


部分文件列表

文件名 大小
OpenWrt增加软件包方法.pdf 44K

部分页面预览

(完整内容请下载后查看)
OpenWrt 增加软件包方法  
OpenWrt 是一个比较完善的嵌入式 Linux 开发平台,在无线路由器应用上已有  
100 多个软件包。人们可以在其基础上增加软件包, 以扩大其应用范围OpenWrt  
在增加软件方面使用极其方便,按照 OpenWrt 的约定就可以很简单完成。  
加入的软件包可以是网上可下载的开源软件或自行开发的软件。 為加入软  
件包需要在 package 目錄下创建一个目录,以包含软件包的各种信息和与  
OpenWrt 建立联系的文件。然后创建一个 Makefile OpenWrt 建立联系,  
Makefile 需要遵循 OpenWrt 的约定。另外可以創建一個 patchs 目錄保存 patch  
文件,對下載的源代碼進行適量修改。下面主要介紹  
1、引入文件  
Makefile 的基本約定。  
OpenWrt 使用三个 makefile 的子文件,分别为:  
include $(TOPDIR)/rules.mk  
include $(INCLUDE_DIR)/kernel.mk  
include $(INCLUDE_DIR)/package.mk  
由這些 makefile 子文件確立軟件包加入 OpenWrt 的方式和方法。  
$(TOPDIR)/rules.mk 一般在 Makefile 的開頭,$(INCLUDE_DIR)/kernel.mk 文件  
對於軟件包為內核時不可缺少, $(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、  
svncvshgbzr 等。有關下載方法可參考 $(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 用户程序编译包定义  

全部评论(0)

暂无评论