OpenWrt整合非官方包之Makefile規則

2021-06-28 09:10:34 字數 1836 閱讀 3649

其他可參考:

首先進入原始碼包根目錄裡的package 建立個資料夾 自己起個名字

然後進入那個資料夾 建立makefile

注意: 一定要用linux文字編輯器建立 否則不認 或者用ultraedit轉換成unix換行符

檔案內容: (方括號為需要自己修改的內容)

[cpp]view plain

copy

include $(topdir)/rules.mk  

pkg_name:=[軟體包名字 和資料夾名稱一樣]  

pkg_version:=[軟體包版本 自己寫個]  

pkg_release:=1  

pkg_build_dir := $(build_dir)/$(pkg_name)  

include $(include_dir)/package.mk  

define package/$(pkg_name)  

section:=utils  

category:=[軟體包在menuconfig裡的位置 比如base system]  

depends:=[依賴包 兩個之間通過空格分隔 前面加+為預設顯示 選中該軟體包自動選中依賴包 不加+為預設不顯示 選中依賴包才顯示]  

title:=[標題]  

pkgarch:=[平台 比如ar71xx 全部寫all]  

maintainer:=[作者]  

endef  

define package/$(pkg_name)/description  

[軟體包簡介]  

endef  

define build/prepare  

endef  

define build/configure  

endef  

define build/compile  

endef  

define package/$(pkg_name)/conffiles  

[公升級時保留檔案/備份時備份檔案 乙個檔案一行]  

endef  

define package/$(pkg_name)/install  

$(cp) ./files/* $(1)/  

[安裝(編譯)時執行的指令碼 記得加上#!/bin/sh 沒有就空著]  

endef  

define package/$(pkg_name)/preinst  

[安裝前執行的指令碼 記得加上#!/bin/sh 沒有就空著]  

endef  

define package/$(pkg_name)/postinst  

[安裝後執行的指令碼 記得加上#!/bin/sh 沒有就空著]  

endef  

package/$(pkg_name)/prerm  

[刪除前執行的指令碼 記得加上#!/bin/sh 沒有就空著]  

endef  

package/$(pkg_name)/postrm  

[刪除後執行的指令碼 記得加上#!/bin/sh 沒有就空著]  

endef  

$(eval $(call buildpackage,$(pkg_name)))  

然後在資料夾裡新建個files資料夾 把需要整合的東西一起扔進去(把files當作路由根目錄 注意如果檔案有衝突需要在安裝前指令碼裡加入刪除命令)

ok 這樣就好了 進menuconfig選中軟體包編譯就行了 ipk在原始碼包根目錄的bin/[系列]/packages裡

附: 安裝前/後 刪除前/後的指令碼裡請用變數 如: $(cp) $(rm) 根目錄表示為$(1)

非官方答覆

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...

WinX非官方手冊(一)

對 winx 的一些整理 很久沒有寫 winx 的東西了,開學了,很忙,呵呵,又要準備考研,沒有時間來研究了,而且也沒有做什麼 gui,基本寫的都是 cui的東西,所以到 winx 就放下了。昨天寫了乙個最小二乘法的直線擬使程式,想做成 gui的,以後做實驗的時候用,於是又想起了 winx 鬱悶的是...

SpringBoot非官方教程,非同步方法

這篇文章主要介紹在springboot 使用非同步方法,去請求github api.在pom檔案引入相關依賴 org.springframework.bootgroupid spring boot starterartifactid dependency org.springframeworkgro...