導航
1. 配置openwrt
2. 編譯openwrt
3. 錯誤記錄
1. 配置openwrt
在openwrt的根目錄下,執行make menuconfig.
這個界面我也只是了解了這兩個選項而已,其他的留作以后補充。主芯片就是你的路由器用的是什么芯片,具體的板子是指匹配了這個板子后,一些驅動,IO口對的上。
找不到的,不一樣的,我暫時也不清楚怎么辦,百度過這個驅動很難寫,至於我為什么知道是這個型號,因為是公司前輩告訴我的。不然我也是無從得知。
暫時先這樣吧,等有時間了,再回來補充這一塊的知識。
save之后就可以exit。
配置完成。
2. 編譯openwrt
2.1 clean,以防未知錯誤。make clean
2.2 編譯 make V=s 來編譯。第一遍最好不要用多核編譯 ,如果使用多核編譯的話就加j=n n是你的cpu核數。
注:第一次編譯要聯網,因為會下載很多東西。下載在dl文件夾下。
補充:我是用虛擬機裝的Ubuntu,編譯的,又一次報錯,是因為是在root權限下創建的文件夾,結果失敗。
還有一次是因為虛擬機內存只有2g,導致變異失敗。重新創建虛擬機加大內存就好了。如果環境沒有裝好,也會報報錯,一般提示你需要安裝什么什么。。。
編譯很久,要慢慢等待。在編譯完成之后,會生成一個bin目錄。
在這個路徑下,就會生成編譯好的bin文件。
至此,編譯結束。
--------------------------------------------------------------------------------------------------------------------------
3. 錯誤記錄
編譯能一次性通過的,真的是很少很少,總是會出現各種各樣的問題。因為這些問題,除了內因,還有外因,所以記錄下來,僅供參考。
問題1:
這是因為無法成功下載某個文件,多次嘗試連接服務器無果后檢驗文件失敗。解決辦法比較簡單,按住ctrl但及下載地址手動下載,然后移動到dl文件夾下面,就可以通過校驗。make clean后重新make。
問題2:編譯內存不足
這個問題當時真的是一點頭緒都沒有,百度了好久,谷歌上看到說編譯好像要3G以上內存,一想,我似乎只有2G,所以重新安裝了linux,發現問題解決了。這里沒有截圖,總之在安裝ubuntu的時候,至少來個標配吧。內存太小怎么玩編譯。
問題3:因為root權限的關系
我一開始mkdir的時候,是用root去建立的,雖然git的時候我已經退出了管理員狀態,但是一想,文件夾是root的。所以解決辦法是除了安裝環境,包括創建文件夾都不要用root身份。
問題4:如果下載很慢的,可以更改/etc/hosts文件。
結尾處添加:
151.101.76.249 http://global-ssl.fastly.net 192.30.255.113 http://github.com
再更新DNS緩存:
sudo /etc/init.d/networking restart
其他問題待更新。