您的位置:首页 > 运维架构

20181018--OpenWrt源码下载及固件编译

2018-12-18 15:54 405 查看

        之前看过好多openwrt编译的资料,但是一直没有深入研究和单独进行openwrt固件的编译,都是刷ipk和so,目前有个项目必须要自己编译固件,所以耐下心来看了下资料,网络搜。。在配置openwrt编译环境的时候还比较顺利,没有改过软件源,一步一步就完成了,但是在下载openwrt源码的时候,老是报错,搜了好多资料,发现了前辈们发的帖子,原先的源码失效了,openwrt和LEDE合并了。好的,问题解决。那么接下来就说下openwrt环境配置到编译教程。

第一部分:搭建编译环境

 1. 在编译之前我们先要搭建环境,ubuntu下OpenWrt编译环境需要安装很多组件:

sudo apt-get install gcc  g++ binutils patch bzip2 flex bison make autocnf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev subversion git-cor gaw asciido libz-dev

如果你怕有些没安装成功, 也可以一个个安装:

sudo apt-get install gcc 

sudo apt-get install g++ 

sudo apt-get install binutils 

sudo apt-get install patch 

sudo apt-get install bzip2 

sudo apt-get install flex 

sudo apt-get install bison 

sudo apt-get install make 

sudo apt-get install autoconf 

sudo apt-get install gettext 

sudo apt-get install texinfo 

sudo apt-get install unzip 

sudo apt-get install sharutils 

sudo apt-get install subversion 

sudo apt-get install libncurses5-dev 

sudo apt-get install ncurses-term 

sudo apt-get install zlib1g-dev 

sudo apt-get install subversion 

sudo apt-get install  git-core

sudo apt-get install gawk

sudo apt-get install asciidoc

sudo apt-get install libz-dev

当然安装之前最好先更新下组件包:

sudo apt-get update

这里小编选择逐个安装

2. 经过小编逐个安装,发现大部分在ubuntu系统中就已经安装好了,只需再安装以下几款:

sudo apt-get install flex

sudo apt-get install bison 

sudo apt-get install autoconf 

sudo apt-get install texinfo 

sudo apt-get install subversion 

sudo apt-get install libncurses5-dev 

sudo apt-get install  git-core

sudo apt-get install asciidoc(文件比较大,耐心等待)

至此编译环境搭建完成。

第二部分:下载OpenWrt源码并编译

2018年,OpenWrt和LEDE宣布合并了,从此我们下载OpenWrt源码的方法发生了重大的改变。目前稳定的OpenWrt版本是由LEDE 17.01源代码构建的,并以LEDE项目命名。OpenWrt的开发版本目前以OpenWrt命名,版本号为18.01。之前网上各种各样的下载方法已经不可用了。
 

[code]1.先创建编译文件夹
mkdir openwrt
sudo chmod 777 openwrt
cd openwrt

2.目前,正确的、亲测可用的OpenWrt源码下载方法是:
版本号为LEDE 17.01
git clone https://github.com/openwrt/openwrt.git

cd openwrt

./scripts/feeds update -a

./scripts/feeds install -a

make menuconfig

make V=s

 版本号为chaos_calmer 15.01.1
git clone git://github.com/openwrt/chaos_calmer.git

cd chaos_calmer

./scripts/feeds update -a

./scripts/feeds install -a

make menuconfig

make V=s
ps;我这里选择的是LEDE的源码。

输入make menuconfig 之后就会进入界面配置,

我们教程所采用的设备的CPU芯片是MT7620系列(MT7620A/N),下面就开始为MT7620系列的设备进行最基本的配置,步骤如下:

  1. Target System (Atheros AR7xxx/AR9xxx) --->
    回车进入下翻后空格选择
    Ralink mips
    然后再回车后退,这时编译目标就是: 
    Target System (Ralink MIPS) --->
    了。

  2. Subtarget (RT3x5x/RT5350 based boards) --->
    回车进入下翻按空格选择
    (X) MT7620 based boards
     然后回车后退,这时编译的子目标就是:
    Subtarget (MT7620 based boards) --->
     了。

  3. LuCI --->
     回车进去 
    1. Collections --->
     再回车进去再空格选择第一个
    <*> luci(new)
    ,然后在Exit一路后退到主菜单。

  4. 在主菜单Exit退出配置并保存。

3.保存之后,会回到终端界面,输入make V=99,就这么一个命令,就会开启整个编译构建系统,全自动的去为我们编译我们需要的固件。所以的所以,这个过程将会是一个漫长的等待。如果互联网网络比较通畅,那么咱们这第一次编译的时间大约要花2~3小时。因为构建系统需要去互联网上下载各种程序库源代码,然后再逐个编译,最后集成并组建出我们需要的固件。

 

 

 

 

这个教程,大部分是参考其他大佬的,附上链接,感谢大佬们、

1.  https://www.geek-share.com/detail/2637148701.html   零基础OpenWRT固件编译,大体教程

2.https://www.geek-share.com/detail/2743078006.html  OpenWrt源码下载及固件编译   提示了openwrt源码下载方式的更换

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: