如何新增自己的應用到openwrt上

2021-08-09 20:26:29 字數 2608 閱讀 7356

想在板子上加自己的程式,是通過編譯.c檔案打包成乙個package,然後通過編譯生成乙個.ipk包,通過scp方式(例如winscp)上傳到板上系統,再通過opkg install ***來安裝,安裝完成標誌就是輸入前幾個字元可以通過tab補全就算成功了。

cd package

mkdir ***; 

mkdir src

touch src/makefile   /* ***.c 編譯makefile */

touch ./makefile /*建立最上層makefile,這個makefile

檔案是openwrt

讀的*/

這兩個makefile是在不同資料夾的

***.c使用的makefile

# build helloworld executable when user executes "make"  

cc = gcc

***: ***.o  

$(cc) $(ldflags) ***.o -o ***  

***.o: ***.c  

$(cc) $(cflags) -c ***.c  

# remove object files and executable when user executes "make clean"  

clean:  

rm *.o ***  

給openwrt用的makefile:

借用:貼一下

cat makefile

#seven

include $(topdir)/rules.mk          //像其他package一樣新增規則

#include $(include_dir)/kernel.mk

pkg_name:= zl380tw     //包的名字 可以隨便取

pkg_release:=1               //自定義

pkg_version:=1.0              //自定義

include $(include_dir)/package.mk     //讀取package規則

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

define package/zl380tw          //建立選單條目

section:=utils                    //屬於哪個類別,在此屬於utils

category:=utilities

title:=microsemi r/w test     //在選單顯示標題

endef

define package/zl380tw/description  //描述資訊 自定義

zl380tw building test

endef

define build/prepare               //建立包編譯位置

mkdir -p $(pkg_build_dir)/src

$(cp) ./src/* $(pkg_build_dir)/src/

$(cp) ./include $(pkg_build_dir)/

$(cp) ./lib $(pkg_build_dir)/

endef

define build/compile     //編譯路徑 此處會執行src/makefile建立目標程式

$(make) -c $(pkg_build_dir)/src \

$(target_configure_opts) cflags="$(target_cflags) -i$(linux_dir)/include"

endef

define package/zl380tw/install     //此處對目標檔案產出位置做安排,如果不想打包進fw,需要移除此項,然後通過 opkg install ***.ipk安裝

$(install_dir) $(1)/usr/bin

$(install_bin) $(pkg_build_dir)/src/tw $(1)/usr/bin

$(install_bin) $(pkg_build_dir)/src/tw_spi_access $(1)/usr/bin

$(install_bin) $(pkg_build_dir)/src/raklink $(1)/usr/bin

endef

$(eval $(call buildpackage,zl380tw))     

其中的很多選項可以注釋掉,我只使用了很少的一部分

只要框架相同即可

寫好makefile後

回到最上層資料夾(我的makefile在

/home/work/openwrt/openwrt/package

db回到這裡後,用make menuconfig,在utils中選中(檔名我使用的是m,選*沒有編譯過)剛加的模組名,儲存.config

然後執行make,生成ipk檔案在/openwrt/bin/ramips/packages/base下找到***.ipk

通過(winscp)網線傳輸到板子/tmp上,通過opkg install安裝,再使用opkg list就可以看到了

以後的程式修改就可以通過這樣的方式傳輸到板子上了

deepLink iOS 應用到自己APP 記錄

通過xcode新增url scheme跳轉,操作步驟如下 第一步找到url types的新增處 targets info url types.以下為 給出的url規範,用來呼叫 客戶端的寶貝詳情 taobao 寶貝搜尋 taobao 店鋪搜尋 taobao com browse shop searc...

ubuntu 新增應用到啟動器

新增應用到啟動器 同樣編輯對應的 desktop檔案即可。例如eclipse,最簡潔的desktop檔案是 desktop entry version 1.0 應用的版本,可以隨意 name eclipse 應用的名稱,可以隨意 exec home henry program eclipse ecl...

SAP 應用到的Tcode

se38 abap編輯器 se75 建立長文物件以及呼叫建立的物件 se11 自定義表並維護 se16n 對資料表進行編輯與檢視 se80 物件瀏覽器 se91 建立訊息類 se93 建立事務碼 se37 維護function module se09 傳輸組織器 se41 選單製作器 qaer 上傳...