文档章节

openwrt编译教程(第一章)

stevenliu
 stevenliu
发布于 2016/07/12 16:07
字数 797
阅读 592
收藏 2

首先安装git 代码用git检出的 还有一些依赖 

centos的依赖安装

yum install asciidoc autoconf binutils bison build-essential bzip2 flex gawk gettext git libncurses5-dev libssl-dev libxml-parser-perl libz-dev patch quilt subversion uglifyjs unzip xsltproc zlib1g-dev

如果是ubuntu的话

apt-get install asciidoc autoconf binutils bison build-essential bzip2 flex gawk gettext git libncurses5-dev libssl-dev libxml-parser-perl libz-dev patch quilt subversion uglifyjs unzip xsltproc zlib1g-dev

我在编译中经常会出现网络问题和缺少依赖 大家仔细看日志。

首先看官网github

https://github.com/openwrt-mirror/openwrt.git

在你的linux里创建一个目录

然后在那里执行

git clone https://github.com/openwrt-mirror/openwrt.git

把代码检出

然后进入到openwrt文件夹

按照官网的说明依次执行 

首先把官网下载下来的openwrt目录下的feeds.conf.default改名字

mv  feeds.conf.default feeds.conf

然后执行

./scripts/feeds update -a
./scripts/feeds install -a

注意 如果你在下面make menuconfig的时候发现少很多包就是上面这俩命令的问题 请检查你的网络是否通畅,必要时要翻墙

执行完后就该检查菜单了

make menuconfig

执行后

 

这里 基本上都是网上指定的根据你的硬件选择 由于我的是斐讯k2 所以就选择mt7620

下面配置一下界面的东西

luci里面就是界面的东西 当然如果你想集成其他的比如shadowvpn这类的(会在后面讲)得自己加入到openwrt的package里git clone就ok了 然后 就有选项了

下面是上面的具体步骤:

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

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


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


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

到此配置完毕 保存退出就ok了

下面开始编译

执行命令 make -j1 V=99

第一次执行的时候用单线程 j1 就是指定线程 V=99 尽量的显示全的错误。

在我第一次编译的时候出现错误 上面写着set XX_XXX_XX=1这类的错误 那么启动编译改一下这样执行 把set改成export 因为是linux

export  XX_XXX_XX=1 && make -j1 V=99这样编译

编译的时候会出现各种各样的问题 大家自己看怎么解决吧 编译的时候会下载一些g++这类的包 大家多注意吧 一般网络有问题的 得重试好几次 有可能翻墙

编译完成会在bin下面有你对应的型号的配置

下一章会讲怎么整合shadowvpn和其他包还有斐讯k2的编译方式 上面只编译官网的教程

© 著作权归作者所有

共有 人打赏支持
stevenliu

stevenliu

粉丝 59
博文 31
码字总数 9784
作品 0
昌平
程序员
私信 提问
OpenWrt系列教程汇总 & OpenWrt简体中文Wiki

OpenWrt系列教程汇总 OpenWrt简体中文Wiki 快速导航

AlphaJay
2011/07/26
0
1
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
0
1
玩转小米路由器先从pcDuino的OpenWrt系统开始

小米路由器发布颠覆了路由器的定义,就像当初乔布斯发布没有键盘的iphone一样。玩家们都知道小米为发烧友而生,玩家都知道小米路由器使用的深度定制的OpenWrt系统,然而对于很多玩家来说,对...

simpower
2014/11/17
0
2
openwrt 编译问题

@娱乐你我 你好,想跟你请教个问题: 我参考教程中的步骤已经修改和添加完845相关的文件,但是再编译到补丁的时候提示一下错误,请教该如何解决呢,谢谢! Applying patch platform/999-MIPS...

tuzibaibai
2015/03/19
876
2
OpenWrt “Chaos Calmer” 15.05 发布

OpenWrt “Chaos Calmer” 15.05 发布,此版本现已提供下载:http://downloads.openwrt.org/chaos_calmer/15.05/。 相比 Barrier Breaker,值得关注的改进如下: 相比 RC 版本的改进: 更多改...

oschina
2015/09/12
15.5K
14

没有更多内容

加载失败,请刷新页面

加载更多

dockerfile 镜像构建(1)

通用dockerfile 利用已经编译好的.jar 来构建镜像。要构建的目录如下: [root@iZuf61quxhnlk9m2tkx16cZ demo_jar]# docker build -t demo:1 . 运行镜像: [root@iZuf61quxhnlk9m2tkx16cZ de...

Canaan_
43分钟前
1
0
Redis radix tree源码解析

Redis实现了不定长压缩前缀的radix tree,用在集群模式下存储slot对应的的所有key信息。本文将详述在Redis中如何实现radix tree。 核心数据结构 raxNode是radix tree的核心数据结构,其结构体...

阿里云云栖社区
46分钟前
10
0
vue import 传入变量

在做动态添加component的时候,传入变量就会报错,出现以下错误信息: vue-router.esm.js?fe87:1921 Error: Cannot find module '@/components/index'. at eval (eval at ./src/components ......

朝如青丝暮成雪
48分钟前
2
0
Flutter开发 Dio拦截器实现token验证过期的功能

前言: 之前分享过在Android中使用Retrofit实现token失效刷新的处理方案,现在Flutter项目也有“token验证过期”的需求,所以接下来我简单总结一下在Flutter项目中如何实现自动刷新token并重...

EmilyWu
49分钟前
9
0
final Map可以修改内容,final 常量不能修改

1.final Map 可以put元素,但是不可以重新赋值 如: final Map map = new HashMap(); map = new HashMap();//不可以 因为栈中变量map引用地址不能修改 2.final str = “aa”; str = "bb";/......

qimh
52分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部