開發(fā)環(huán)境:
主機(jī):Ubuntu16.04
Openwrt:OpenWrt 21.02.2
1 安裝相關(guān)工具和庫
先更新源:
$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目前已經(jīng)很好的支持了MT7620、MT7821等芯片,因此OpenWrt系統(tǒng)完全可以用于MT7620等開發(fā)板。下面開始OpenWrt學(xué)習(xí)之旅。
$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 鍵結(jié)束
查看本地分支情況:
$ git branch –a
可以選擇并切換到指定的版本tag:git checkout -f 比如:
$git checkout -f v21.02.2
然后在查看下分支情況:
下載完OpenWrt的源碼后,為了使OpenWrt支持更多的軟件,需要更新和安裝其它源上面的軟件。
$./scripts/feeds update -a
$./scripts/feeds install -a
一切就緒,接下來就可以開始編譯了。
【注意】OpenWrt默認(rèn)是用非root用戶名來編譯的,因此一定不要用root權(quán)限來編譯OpenWrt系統(tǒng),對于Ubuntu系統(tǒng),不加sudo即可。
3 配置OpenWrt源碼
在編譯OpenWrt系統(tǒng)之前,我們首先要對它進(jìn)行配置,讓它能夠支持我們的MT7620A開發(fā)板。OpenWrt系統(tǒng)也是一個(gè)Linux系統(tǒng),因此它的配置方法和Linux的完全一樣,也是通過make menuconfig來進(jìn)行配置。
$make menuconfig
我們就可以通過方向鍵來選擇配置選項(xiàng),通過空格鍵來選擇配置狀態(tài)。當(dāng)執(zhí)行完上命令后,便會(huì)彈出如圖。
優(yōu)酷YKL1C采用的CPU MT7620A 128MSDRAM、32MFlash,因此,為了讓OpenWrt系統(tǒng)能成功的在我們的開發(fā)板上運(yùn)行起來,我們需要做如下配置。
1).選擇CPU型號
Target System (MediaTek Ralink MIPS) --->
2).選擇CPU子型號
Subtarget (MT7620 based boards) --->
3).選擇具體路由器型號
Target Profile (YOUKU YK1) --->
然后保存退出,這樣就配置完成了。
當(dāng)然也可簡單配置下版本信息。
[*] Image configuration --->
[*] Version configuration options --->
當(dāng)然這只是一個(gè)最簡單的配置,我們首先是要在開發(fā)板把OpenWrt系統(tǒng)跑起來,更復(fù)雜的配置、應(yīng)用,在以后的課程中會(huì)一點(diǎn)一點(diǎn)的教給大家。
4 編譯
最后執(zhí)行make V=99,開始漫長的編譯,編譯時(shí)間由電腦配置決定,由于編譯時(shí),需要的軟件是從網(wǎng)絡(luò)上面下載,所以這里要求電腦必須能夠上網(wǎng)。V=99意思顯示所有信息。
$make V=99
在編譯前,可是用以下命令將源碼先下載:
$make download
第一次編譯大概需要4、5個(gè)小時(shí),以后再次編譯,則分分鐘搞定。編譯出來的鏡像位于bin/targets/ramips/mt7620目錄下面。
$ls bin/targets/ramips/mt7620
其中openwrt-ramips-mt7620-youku-yk1-squashfs-sysupgrade.bin這個(gè)就是我們要的鏡像。燒寫到板子上面即可啟動(dòng)。這樣最簡單OpenWrt就可以啟動(dòng)了,不過好多功能都沒有,一步一步來,不斷深入。
審核編輯:湯梓紅
-
源碼
+關(guān)注
關(guān)注
8文章
641瀏覽量
29208 -
Ubuntu
+關(guān)注
關(guān)注
5文章
563瀏覽量
29756 -
開發(fā)環(huán)境
+關(guān)注
關(guān)注
1文章
225瀏覽量
16617 -
OpenWrt
+關(guān)注
關(guān)注
10文章
130瀏覽量
39304
發(fā)布評論請先 登錄
相關(guān)推薦
評論