开发环境:
主机: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文章
636浏览量
29180 -
Ubuntu
+关注
关注
5文章
563浏览量
29644 -
开发环境
+关注
关注
1文章
223浏览量
16604 -
OpenWrt
+关注
关注
10文章
130浏览量
39287
发布评论请先 登录
相关推荐
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 防火墙介绍

RT5350 Wi-Fi 模块开发指导_物联网 openwrt 开发概述
openwrt都有什么功能_openwrt详细功能介绍_openwrt刷机教程

评论