首先需要在虛擬機器上搭建好openwrt環境,具體可見我的另一篇文章《openwrt環境搭建和編譯過程》
當然少數時候也需要我們自己進行編譯。我這邊以編譯snort (nids) 為例,列出編譯軟體包的步驟(編譯好交叉工具鏈的前提下)。
1、進入到openwrt主目錄。
2、輸入如下命令:
$ ./scripts/feeds update -a #更新軟體列表,不更新有很多軟體包都找不到
$ ./scripts/feeds install -a #安裝軟體列表
$ make defconfig #生成配置檔案
$ make menuconfig
3、進入到配置介面,找到路徑 network->firewall->snort,按y選定,並儲存退出。若不知道需要安裝的包在什麼路徑,可以輸入/
進入查詢介面。
4、編譯,輸入如下命令:
$ make package/feeds/packages/snort/compile v=99
如果你的 cpu 有多個執行緒,可以加上 -j執行緒數 來使用多執行緒編譯,例如:make package/aria2/compile v=99 -j4 #啟用4個執行緒
。
編譯出錯的話,可以通過下面命令檢視編譯出錯的資訊:
$ make package/feeds/packages/snort/compile v=s
5、進入到bin/packages/***x/packages目錄下,snort的ipk包已經編譯好,以及snort依賴庫的ipk包。
注:***x為不同架構名稱不一致,根據自己的架構進入到相應目錄即可。
libdaq_2.2.2-1_aarch64_generic.ipk
libdnet_1.12-1_aarch64_generic.ipk
libpcre_8.43-1_aarch64_generic.ipk
snort_2.9.11.1-8_aarch64_generic.ipk
6、將編譯生成的ipk包,上傳到目標板上安裝執行。
附1:使用ssh登入系統並使用opkg管理軟體包,命令如下:
命令描述
opkg update
從openwrt包儲存庫中獲取可用包的列表
opkg list
顯示可用包及其說明的列表
opkg list | grep -e searchterm
按包名稱或其描述中的搜尋詞篩選列表
opkg install packagename
安裝包
opkg remove packagename
解除安裝以前安裝的軟體包
參考:
openwrt下軟體包的編譯
首先進入原始碼包根目錄裡的package 建立個資料夾 自己起個名字 然後進入那個資料夾 建立makefile 注意 一定要用linux文字編輯器建立 否則不認 或者用ultraedit轉換成unix換行符 檔案內容 方括號為需要自己修改的內容 include topdir rules.mk pkg...
openwrt之新增OpenWrt軟體包概述
新增軟體包 makefile引入檔案 openwrt 使用三個 makefile 的子檔案,分別為 include topdir rules.mk include include dir kernel.mk include include dir package.mk 由這些 makefile 子檔...
OpenWrt增加軟體包方法
更多參考 openwrt是乙個比較完善的嵌入式linux開發平台,在無線路由器應用上已有100多個軟體包。人們可以在其基礎上增加軟體包,以擴大其應用範圍。openwrt在增加軟體方面使用極其方便,按照openwrt的約定就可以很簡單完成。1 引入檔案 openwrt使用三個makefile的子檔案,...