文档章节

如何搭建OpenWRT编译环境

杨树苗
 杨树苗
发布于 2016/11/09 17:36
字数 1430
阅读 258
收藏 1

精选30+云产品,助力企业轻松上云!>>>

 

本教程最新版本:V1.4   20161107更新。

1工具

台式电脑或笔记本

Ubnutu Desktop 16.10

VMware Workstation 12.5

确保网络持续稳定、可靠、快速

2基础软件安装

如果不会安装/设置Windows、VMware Workstation、Ubuntu等基础软件者,请无需往下浏览。

Windows 安装、设置:

确保你的Windows操作系统稳定、硬件配置较高,且运行流畅,建议采用Windows 7或者Windows 10操作系统、安装,并且确保电脑可以正常上网。为避免OpenWRT固件在编译过程中Windows进入屏保、休眠、关闭硬盘等情况,从而引起网络中断及固件编译无法联网等问题,建议关闭Windows屏保、休眠等设置。

 

 

VMware Workstation下载、安装:

请从VMware官方网站下载、安装最新版VMware Workstation 12.5及自行百度一下VMware Workstation 12.5在安装过程中所需要的序列号。

 

Ubnutu下载、安装、设置

1、请从Ubnutu官方网站下载最新版Ubnutu Desktop 16.10,在VMware Workstation 12.5安装Ubnutu16.10时,建议每一步均采用默认设置即可,分区建议不小于30G;

 

 

2、优选Ubnutu组件更新服务器,打开“System Settings”-“Software&Updates”

选择“Other”

 

点击“Select Best Server”,系统会根据你当前所在城市、宽带运营商、宽带质量、网速等综合条件优选出最佳服务器,优选出最佳服务器后,点击“Choose Server”。

 

Password:输入Ubuntu开机登录密码,然后点“Authenticate”

 

3、Ubuntu屏保设置:

因OpenWRT固件编译过程中涉及的环节较多、时间较久等因素,为避免OpenWRT固件在编译过程中Ubuntu进入屏保、休眠、关闭硬盘等情况,从而引起的网络中断及固件编译无法联网等问题,建议关闭Ubuntu屏保设置。

 

 

 

注意:本节没有特殊要求的参数设置,Ubuntu系统中建议采用默认设置即可。

3Ubuntu平台所需组件安装

在编译之前我们先要搭建环境,用Ctrl+Alt+T,打开如下图Shell模式,在Ubuntu Shell模式下安装OpenWrt固件编译环境所需要的如下组件,以下组件安装命令均在根目录下运行,务必确保Ubuntu可以正常上网,否则更新无法完成:

 

sudo apt-get update(用于更新Ubuntu软件仓库中软件包的索引文件,提示输入密码时,请输入Ubuntu开机登录密码)

sudo apt-get install libssl-dev

sudo apt-get install flex

sudo apt-get install bison

sudo apt-get install autoconf

sudo apt-get install texinfo

sudo apt-get install sharutils

sudo apt-get install ncurses-term

sudo apt-get install libncurses5-dev

sudo apt-get install zlib1g-dev

sudo apt-get install subversion

sudo apt-get install gawk

sudo apt-get install git-core

sudo apt-get install original-awk

sudo apt-get install gcc

sudo apt-get install binutils

sudo apt-get install bzip2

sudo apt-get install python

sudo apt-get install perl

sudo apt-get install grep

sudo apt-get install tlp

备注:如果以上或者其他某个软件无法正常安装,请在下图将服务器切换至Ubnutu美国服务器,并继续安装未完成的组件,如下图:

 

4下载OpenWRT固件源代码并登录配置目录

 

下载最新版OpenWRT固件源代码

git clone git://git.openwrt.org/15.05/openwrt.git(根据电脑硬件性能、网速等综合因素大约需要10分钟左右,如果在更新过程中因某些因素导致的中断,请重新运行此命令)

 

登录OpenWRT固件编译配置目录

cd openwrt

 

注意:接下来的所有命令都在/openwrt目录下运行

5更新、安装OpenWRT固件系统软件包

./scripts/feeds update -a(更新OpenWRT固件系统软件源,文件较大,请耐心等待。根据电脑硬件性能、网速等综合因素大约需要15分钟左右,如果在更新过程中因某些因素导致的中断,请重新运行此命令sudo apt-get install命令安装即可)

 

./scripts/feeds install -a(安装OpenWRT固件所有软件包)

 

make defconfig(测试编译环境,如果在测试编译环境时,提示缺少某些组件,请用sudo apt-get install命令安装即可)

 

6进入OpenWRT固件编译环境

 

输入如下命令,进入编译环境,如果一切正常,会出现下图固件配置菜单,可以选择要编译的硬件平台、型号,还能选择固件中要添加的功能和组件,至此编译环境就搭建好了。

make menuconfig

 

 

在OpenWRT固件编译平台选择好固件的运行硬件平台、型号、固件中要添加的功能和组件等选项后,选择“Save”-“Exit”退出OpenWRT固件编译平台,使用如下命令生成最终所需要的固件:

 

               make V=s(首次整个编译过程请确保网络稳定、可靠、网速快,并请耐心等待。根据电脑硬件性能、网速等综合因素大约需要3-5小时左右)

 

注意:在编译固件时,提示缺少某些组件,请用sudo apt-get install安装,如果提示缺少某个软件包,因缺少的软件包可能处于国内稳定性不好或者国外的服务器,可以在百度上搜索下,用迅雷等断点续传软件下载到/openwrt/dl目录,并重新运行make V=s即可。

因OpenWRT固件技术处于高速发展过程中,未来本教程也会根据OpenWRT固件源代码的更新、广大网友的实际使用和反馈情况,持续、及时的更新本教程,请定期刷新本教程,以便获得更多有关OpenWRT固件编译环境的技术。

 

版权声明:深圳市华森通讯技术有限公司(http://www.wuasun.com)倾情奉献,如要转载务必注明

杨树苗
粉丝 1
博文 1
码字总数 1430
作品 0
西安
其他
私信 提问
加载中
请先登录后再评论。
OpenWrt 开发 (二) 搭建开发环境

  本文主要介绍如何搭建 OpenWrt 的开发环境,大部分资源都来自网络,你可以将它看成是一个资源整理帖,节省搜索时间。OpenWrt 开发环境的搭建大致分为以下几步: - 安装虚拟机 - 安装 Li...

Sagittarius_Warrior
2017/12/18
0
0
openwrt固件编译教程

刚刚开始探索openwrt的时候,我从网上找了很多文档,在准备搭建固件编译环境的时候,根据网上的文档,从SVN上面checkout源代码,发现走到./scripts/feeds update -a更新拓展出现了错误,提示...

Kent_0628
2015/11/11
1K
0
第二节,下载openwrt源码和编译环境

文章的开始先说两个重点 1.不要使用root用户编译,普通用户编译即可。 2.自行搭建梯子,以免编译失败。 一,进入虚拟机内的Ubuntu系统 点击左下角的显示应用程序,我们去修改一下Ubuntu的源。...

osc_d5c6tuv9
2019/06/11
4
0
Ubuntu 12.04下编译Openwrt教程 推荐

搭建编译环境 Ubuntu x64 12.04下的命令: sudo apt-get install subversion sudo apt-get install git sudo apt-get install flex sudo apt-get install g++ sudo apt-get install gawk su......

枫影Xda
2012/10/30
9.2K
1
vmware下搭建openwrt

最近闲来无事,想研究下openwrt, 所以尝试着自己搭建一个来玩玩, 当然这里不是以源码编译的形式,那样太耗时。 首先官网下载已有的系统image, 路径如下 : https://archive.openwrt.org/...

技术颜良
2019/12/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java常用开发支持类库

UUID类 UUID是一个生成无重复字符串的程序类(JDK1.5之后出现),这个程序类的主要功能是根据时间戳实现一个自动的无重复的字符串定义(无重复指的是出现重复的概率极低)。 一般在获取UUID时...

哼着我的小调调
5分钟前
0
0
亚马逊测评买家号多开_可以解决这个问题嘛?_微信公众号: VMlogin中文版

对于很多亚马逊卖家来说,做亚马逊测评是并不可少的,都在为了自己的店铺能够获得更多的销售,着重培养自己产品的各项属性,以求获得一个更好的权重排名从而获得更多的曝光,但是在旺季期间亚...

竹节猫-ASOer
12分钟前
0
0
从封装变化的角度看设计模式——对象创建

封装变化之对象创建 在对象创建的过程中,经常会出现的一个问题就是通过显示地指定一个类来创建对象,从而导致紧耦合。这是因为创建对象时指定类名将使你受特定实现的约束而不是特定接口的约...

良许Linux
13分钟前
0
0
Java基础系列——数组之java.util.Arrays使用以及可能出现的异常(12)

java.util.Arrays类即为操作数组的工具类,包含了用来操作数组(比 如排序和搜索)的各种方法。常用方法如下所示: boolean equals(int[] a,int[] b) 判断两个数组是否相等。 String toStrin...

卢佳鹏
26分钟前
19
0
Excel 2016如何删除带超链接表格前空格?

本文演示文档包含超链接。如图 先尝试使用trim和clean函数,=substitute(a1,char(9),"")公式。效果完全一致,超链接被删除。如下图 再次使用搜索引擎,网友给出建议,先提取超链接,删除空格...

白豆腐徐长卿
28分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部