編譯OpenWRT固件

首先安裝需要的軟體包,依次輸入下面的命令,如果出錯了就跳過:

sudo apt-get install g++sudo apt-get install libncurses5-devsudo apt-get install zlib1g-devsudo apt-get install bisonsudo apt-get install flexsudo apt-get install unzipsudo apt-get install autoconfsudo apt-get install gawksudo apt-get install makesudo apt-get install gettextsudo apt-get install gccsudo apt-get install binutilssudo apt-get install patchsudo apt-get install bzip2sudo apt-get install libz-devsudo apt-get install asciidocsudo apt-get install subversionsudo apt-get install sphinxsearchsudo apt-get install libtoolsudo apt-get install sphinx-commonsudo apt-get install libssl-devsudo apt-get install libssl0.9.8

下載OpenWRT源碼(作者使用的為OpenWRT15.05)

使用終端創建並進入存放OpenWRT源碼的目錄,使用git clone下載,之後進入源碼根目錄更新擴展,這個過程因網路情況不同需要的時間不同。

git clone https://github.com/openwrt/chaos_calmer.git//更新擴展./scripts/feeds update -a ./scripts/feeds install -a

源碼根目錄是下面這個樣子

配置OpenWRT編譯選項

在源碼根目錄輸入make menuconfig命令,如果報錯,則很可能是第一步的某些軟體包未安裝,根據錯誤提示,安裝缺少的軟體包,若安裝不上,一般可以百度解決。輸入命令後,按下圖選擇選項,下圖未說明的選項默認不改動即可。

  • 主界面選擇如下(晶元需根據路由器晶元選擇,我用的是mt7620a)

  • 選擇主菜單的Luci選項(web管理界面),選中collections中的luci 和modules/translations中的chinese,如果在主菜單中找不到Luci,則說明更新擴展出了問題,一般是由於網路問題所致,可以嘗試在外網環境中重新進行更新擴展的步驟。

  • 保存並退出

編譯OpenWRT固件

在源碼根目錄下,使用命令make V=s,之後OpenWRT的編譯就開始了,然後開始漫長的等待,OpenWRT編譯過程中會在網路上下載很多資源包,因網路情況不同,編譯的時間長短也不同。當你看到下面這個樣子的提示後,就說明OpenWRT編譯成功了。你可以在/bin/ramips目錄下找到編譯的後綴名為bin的固件,文件名類似於openwrt-ramips-mt7620-mt7620a-squashfs-sysupgrade.bin,這是mt7620a晶元的固件,不同晶元的固件名字會不同。

燒寫固件

可以使用路由器的web管理界面,選中要燒寫的固件,確定開始刷機,等路由器重啟後,一個OpenWRT系統便開始工作了,在瀏覽器輸入192.168.1.1設置管理密碼並將語言改為中文後大致如圖

推薦閱讀:

家庭網路架構和路由器,nas布置方案?
小米路由器3為什麼取消了內置硬碟?
如何看待小米路由器3G?
上網卡慢遊戲掉幀別怪手機,一般是路由器的鍋!
登錄無線路由器管理界面的密碼忘記了,不按reset鍵可以取回密碼嗎?

TAG:路由器 | Linux開發 | OpenWrt |