開發環境:
主機:Ubuntu16.04
Openwrt:OpenWrt 21.02.2
1 安裝相關工具和庫
先更新源:
$sudo apt-get update
1)安裝git工具
$sudo apt-get install git git-core
2)安裝依賴的庫文件
$sudo apt-get install gcc g++ binutils patch bzip2 flex bison cmake make autoconf gettext texinfo unzip sharutils ncurses-term zlib1g-dev libncurses5-dev gawk
2 下載OpenWrt源碼
編譯OpenWrt首先需要下載源碼,OpenWrt的源碼是通過git下載,OpenWrt目前已經很好的支持了MT7620、MT7821等芯片,因此OpenWrt系統完全可以用于MT7620等開發板。下面開始OpenWrt學習之旅。
$git clone https://github.com/openwrt/openwrt.git
輸入命令等待下載即可。
列出可以使用的版本tag:
$git tag
bruceou@ubuntu:~/openwrt$ git tag
reboot
v17.01.0
v17.01.0-rc1
v17.01.0-rc2
v17.01.1
v17.01.2
v17.01.3
v17.01.4
v17.01.5
v17.01.6
v17.01.7
v18.06.0
v18.06.0-rc1
v18.06.0-rc2
v18.06.1
v18.06.2
v18.06.3
v18.06.4
v18.06.5
v18.06.6
v18.06.7
v18.06.8
v18.06.9
v19.07.0
v19.07.0-rc1
v19.07.0-rc2
v19.07.1
v19.07.2
v19.07.3
v19.07.4
v19.07.5
v19.07.6
v19.07.7
v19.07.8
v19.07.9
v21.02.0
v21.02.0-rc1
v21.02.0-rc2
v21.02.0-rc3
v21.02.0-rc4
v21.02.1
v21.02.2
【注意】q 鍵結束
查看本地分支情況:
$ git branch –a
可以選擇并切換到指定的版本tag:git checkout -f 比如:
$git checkout -f v21.02.2
然后在查看下分支情況:
下載完OpenWrt的源碼后,為了使OpenWrt支持更多的軟件,需要更新和安裝其它源上面的軟件。
$./scripts/feeds update -a
$./scripts/feeds install -a
一切就緒,接下來就可以開始編譯了。
【注意】OpenWrt默認是用非root用戶名來編譯的,因此一定不要用root權限來編譯OpenWrt系統,對于Ubuntu系統,不加sudo即可。
3 配置OpenWrt源碼
在編譯OpenWrt系統之前,我們首先要對它進行配置,讓它能夠支持我們的MT7620A開發板。OpenWrt系統也是一個Linux系統,因此它的配置方法和Linux的完全一樣,也是通過make menuconfig來進行配置。
$make menuconfig
我們就可以通過方向鍵來選擇配置選項,通過空格鍵來選擇配置狀態。當執行完上命令后,便會彈出如圖。
優酷YKL1C采用的CPU MT7620A 128MSDRAM、32MFlash,因此,為了讓OpenWrt系統能成功的在我們的開發板上運行起來,我們需要做如下配置。
1).選擇CPU型號
Target System (MediaTek Ralink MIPS) --->
2).選擇CPU子型號
Subtarget (MT7620 based boards) --->
3).選擇具體路由器型號
Target Profile (YOUKU YK1) --->
然后保存退出,這樣就配置完成了。
當然也可簡單配置下版本信息。
[*] Image configuration --->
[*] Version configuration options --->
當然這只是一個最簡單的配置,我們首先是要在開發板把OpenWrt系統跑起來,更復雜的配置、應用,在以后的課程中會一點一點的教給大家。
4 編譯
最后執行make V=99,開始漫長的編譯,編譯時間由電腦配置決定,由于編譯時,需要的軟件是從網絡上面下載,所以這里要求電腦必須能夠上網。V=99意思顯示所有信息。
$make V=99
在編譯前,可是用以下命令將源碼先下載:
$make download
第一次編譯大概需要4、5個小時,以后再次編譯,則分分鐘搞定。編譯出來的鏡像位于bin/targets/ramips/mt7620目錄下面。
$ls bin/targets/ramips/mt7620
其中openwrt-ramips-mt7620-youku-yk1-squashfs-sysupgrade.bin這個就是我們要的鏡像。燒寫到板子上面即可啟動。這樣最簡單OpenWrt就可以啟動了,不過好多功能都沒有,一步一步來,不斷深入。
審核編輯:湯梓紅
-
源碼
+關注
關注
8文章
640瀏覽量
29204 -
Ubuntu
+關注
關注
5文章
563瀏覽量
29750 -
開發環境
+關注
關注
1文章
225瀏覽量
16617 -
OpenWrt
+關注
關注
10文章
130瀏覽量
39302
發布評論請先 登錄
相關推薦
Openwrt開發指南 第1章 OpenWrt入門
Openwrt開發指南 第2章 OpenWrt開發環境搭建
Openwrt開發指南 第4章 燒寫OpenWrt固件
Openwrt開發指南 第7章 添加Web界面
Openwrt開發指南 第12章 添加OpenWrt軟件包
Openwrt開發指南 第13章 OpenWrt啟動流程
Openwrt開發指南 第14章 統一接口配置UCI
Openwrt開發指南 第17章 驅動開發之字符設備驅動程序
Openwrt開發指南 第22章 Openwrt串口的使用2
Openwrt開發指南 第29章 OpenWrt 防火墻介紹
![<b class='flag-5'>Openwrt</b><b class='flag-5'>開發指南</b> <b class='flag-5'>第</b>29<b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b> 防火墻介紹](https://file1.elecfans.com/web2/M00/8C/D1/wKgaomSyVr-AB38EAACpb5ioTgU243.png)
RT5350 Wi-Fi 模塊開發指導_物聯網 openwrt 開發概述
openwrt都有什么功能_openwrt詳細功能介紹_openwrt刷機教程
![<b class='flag-5'>openwrt</b>都有什么功能_<b class='flag-5'>openwrt</b>詳細功能介紹_<b class='flag-5'>openwrt</b>刷機教程](https://file1.elecfans.com//web2/M00/A7/1D/wKgZomUMQnmACto5AAAR9_H4Skk796.jpg)
評論