2021-05-12 14:32:11
CentOS 搭建Openwrt開發環境
本來只是想建立交叉編譯環境編譯一些自己的程式碼放在wr703n路由器上執行,但是現在官方的 tool-chain 解壓修改PATH之後編譯的時候發現並不能用,後來在把問題發到openwrt編譯群中求助大神,得到的結論是:下載的交叉編譯鏈和電腦的架構不同,不能使用。也就是說只能下載openWRT的原始碼,自己進行設定並生成SDK才可以,沒辦法只好開始和了編譯openWRT原始碼的歷程
首先下載 openwrt原始碼
openwrt的原始碼實施了版本控制,可以使用git 或者 svn進行克隆
git::
git clone git://git.openwrt.org/14.07/openwrt.git
svn:
svn co svn://svn.openwrt.org/openwrt/trunk/本人用的是git進行下載的,首先需要安裝git
yum install git
然後使用上邊的clone 命令進行下載原始碼,網速好的話 一會兒就下載好了,筆者受網速限制,第六次嘗試下載的時候終於下載完整了。
然後可以切換到原始碼目錄 make menuconfig
此時會報一大堆的 需要解決的依賴,一個個解決就OK 了,此處簡單介紹一下筆者受困的幾個依賴
1、g++ 用yum 進行安裝比較方便,但是 g++ 包的名字叫 gcc-c++ 因此安裝的時候需要用 yum install gcc-c++命令
2、zlib靜態庫,此依賴比較麻煩需要上網自己下載
wget http://zlib.net/zlib-1.2.8.tar.gz (由於此原始碼還在不斷更新,因此版本號可能有些出入,當出現404 頁面找不到時可以通過瀏覽器登入zlib.net/ 檢視當前的版本號)
下載完成後 進行解壓安裝。
#tar -zxvf zlib-1.2.8.tar.gz #解壓
#cd zlib-1.2.8
#./config
#make
#make install
3、openssl library development 此依賴的包名是 openssl-devel 所以需要用yum install openssl-devel 進行安裝
所有依賴都解決完後,再新增一個普通使用者(原則上openwrt 不允許使用root使用者進行編譯).
make menuconfig
將 有SDK字樣的行 標記 退出,儲存組態檔,make 開始編譯。
編譯過程需要聯網,編譯速度根據網速而定。
編譯會生成 sdk ,安裝sdk設定完後就可以用來編譯打包自己的ipk軟體包了。
Ubuntu 使用Openwrt SDK交叉編譯ipk包過程圖文全紀錄 http://www.linuxidc.com/Linux/2016-10/136490.htm
OpenWrt:Ubuntu 12.04搭建OpenWrt編譯環境 http://www.linuxidc.com/Linux/2016-07/133764.htm
Mac OS下搭建OpenWrt編譯環境記錄 http://www.linuxidc.com/Linux/2016-10/136257.htm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-11/137071.htm
相關文章