首頁 > 軟體

CentOS 搭建Openwrt開發環境

2020-06-16 17:28:56

本來只是想建立交叉編譯環境編譯一些自己的程式碼放在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


IT145.com E-mail:sddin#qq.com