Openwrt平台搭建
1. 在平台搭建之前,有几点需要说明一下的:
所谓的平台搭建,不仅包括固件的烧写,还包括开发,编译和调试的环境搭建。
Openwrt平台是基于Linux的,其支持虚拟机安装,对于手边没有设备的亲们,可以通过安装虚拟机感受一下(木有图形界面,需要命令行控制)。
2. Openwrt开发环境搭建流程(仅列出我本人所搭建的环境,以Atheros 9344为例):
(1)操作系统: Ubuntu12.04。(版本有点老,推荐使用更行的版本)。
(2)在Ubuntu下搭建Openwrt开发环境:
apt-get install g++
apt-get install libncurses5-dev
apt-get install zlib1g-dev
apt-get install bison
apt-get install flex
apt-get install unzip
apt-get install autoconf
apt-get install gawk
apt-get install make
apt-get install gettext
apt-get install gcc
apt-get install binutils
apt-get install patch
apt-get install bzip2
apt-get install libz-dev
apt-get install asciidoc
apt-get install subversion
因源码随时可能变动,下载后,运行snv up更新本地代码。
下载后一般额外软件包需要更新: (没有安装git的要安装一下:sudo apt-get install git)
./scripts/feeds update -a
./scripts/feeds install -a
(3)Openwrt系统的首次编译(p.s. 在编译过程中,程序会自动通过feed机制,在网上下载相应的依赖文件,这要求编译者所在网络环境良好!):
编译必须保证有良好的网络连接,且非root账户。
下一步是检查编译环境:
#make defconfig
若defconfig回显提示缺少软件包或编译库等依赖,则按提示安装所缺软件包或库等即可
若提示有某个依赖库没有安装,请按照提示按照对应的依赖库. 直到上述检查无返回。
进行编译配置:
对目标固件进行配置
make menuconfig
对目标固件进行配置. 由于首次编译时间会较长,因此我创建一个无外加软件的固件:(下面三幅图,分别对应于Target System,Subtarget和Target Profile)
最后保存设置:
之后就是漫长的编译的时间了:
make #默认安装,无提示 make V=99 #显示编译日志,并打印在shell中
等待漫长的时间之后,如果成功,可在编译目录下 bin/
可以看到多个.bin文件,这些.bin文件中
openwrt-ar71xx-generic-db120-kernel.bin:对应于只烧写内核固件
openwrt-ar71xx-generic-db120-rootfs-squashfs.bin:对应于文件系统固件
openwrt-ar71xx-generic-db120-squashfs-sysupgrade.bin:对应于完整的固件
至此,一个可以烧写的固件就编译好了。当然,可以看出这个系统只能将路由器启动,能够正常加电运转,但是其没有任何功能。(在后面,我们需要对其添加各种软件支持,甚至是通过编译内核的方式添加软件应用)
(4) 固件烧写
对于固件烧写呢,有多种方式,我仅将我所使用过的方式列出来:
++Web在线固件升级,这个一般适用于原厂固件升级,或者Openwrt镜像烧写。此方法难度低,如果固件没有问题并且少些过程中没有断电的话,都能成功烧写。
++tftp方式升级,本人使用的Atheros9344路由,机身自带有console口,可以通过网线直连的方式,直接通过PC进行烧写。
此过程难度较高,需要有一定的开发基础。
此外,还有好多方法,在网上都能找到,由于暂时不需要,我就不一一列出了。
(5) 路由重启,测试
进入这一步,整个开发、编译、调试和烧写的过程就到最后了。
转载请注明出处: http://www.cnblogs.com/double-win/ 谢谢!
Openwrt平台搭建相关推荐
- [Openwrt 项目开发笔记]:Openwrt平台搭建(一)
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...
- 【智能路由器】新手openwrt平台搭建
[智能路由器]系列文章连接 http://blog.csdn.net/u012819339/article/category/5803489 从本篇文章开始,后续文章将会转为在openwrt上的开发, ...
- 计算机oj平台搭建应该学什么,青岛大学开源OJ平台搭建
源码地址为:https://github.com/QingdaoU/OnlineJudge 可参考的文档为:https://github.com/QingdaoU/OnlineJudgeDeploy/ ...
- Windows平台搭建-----C语言
上期我们已经进行Linux的平台搭建,今期我们就来搭建下我们最常用的.最适合初学者的一种方式,那就是搭建Windows平台开发环境,只需要两种工具即可,一个就是编辑器(编辑代码的工具),另一个就是编译 ...
- 手把手教你生信分析平台搭建
宏基因组按:此系列教程为基因学苑的王通老师原创发布.非常适合刚接受生信,又有服务器管理需求的小伙伴做为入门材料,一共20篇文章,内容涉及服务器选购.Linux系统安装.用户管理.软件安装.软件兼容环境 ...
- RocketMQ 实战 集群监控平台搭建
RocketMQ 实战 集群监控平台搭建 概述 RocketMQ有一个对其扩展的开源项目incubator-rocketmq-externals,这个项目中有一个子模块叫rocketmq-consol ...
- 运维企业专题(2)HTTP加速器——Varnish缓存机制后篇(后端服务器集群、负载均衡与CDN推送平台搭建)
1.实验一:配置后端服务器集群 1)实验目的:定义不同域名站点的后端服务器,通过域名会访问不同的后端主机 2)实验过程: <1>在调度器server1上编写Varnish的配置文件 vim ...
- mesos+marathon平台搭建
2019独角兽企业重金招聘Python工程师标准>>> mesos+marathon平台搭建 博客分类: 虚拟化 mesos 一.安装jdk和maven 修改/etc/profile ...
- 影院平台搭建 - (2)FLV发布系统的简单搭建
使用Wowza Media Server进行FLV的发布,相对于Adobe自己的解决方案的对比在这里.RTMP和HTTP的对比在这里.(需要FQ才能看) 最新Wowza Media Server Pr ...
- 基于认证的代理平台搭建配置squid-20130730
基于认证的代理平台搭建配置squid-20130730 功能:通过squid代理实现 (1)基于用户名密码认证的出口ip路由选择 (2)基于client源ip的出口ip路由选择 (3)基于连接本机ip ...
最新文章
- iOS 实现多个可变 cell 复杂界面的制作
- 网络端口的分类和作用
- Git Push 不用再次输入用户名和密码方法
- 关于citrix 负载及WI的一些问题
- 招聘 | 香侬在召唤:算法工程师,让金融把你的代码变现
- 对ASCALL码的理解
- 计算机user用户的密码存储在,windows存放用户密码的文件
- BigPipe 大的页面分割成一个一个管道
- ant java 外部jar包_java – 在使用Ant的新jar文件构建中包括外部jar文件
- 基于JAVA+SpringBoot+Mybatis+MYSQL的文档管理系统
- ORACLE 包内的存储过程的动态sql
- 单片机音乐倒数计时器c语言,基于单片机音乐倒数计时器设计.doc
- X264源码下载地址
- 软件环境整理(pro、sit、test、pre、dev)
- mysql先进后出_栈、队列中“先进先出”,“后进先出”的含义
- C# 实现登录并跳转界面
- 7-16 新浪微博热门话题 (30 分)
- Why Transformer works
- python抓取视频真实地址_快手批量获取真实地址python
- android studio拨打电话代码,AndroidStudio实现拨打电话和发短信(kotlin)
热门文章
- win10系统下计算器界面变成英文的解决方法
- 【LeetCode】279.完全平方数(四种方法,不怕不会!开拓思维)
- SaaS营销网站的组织结构
- 中高级测试工程师面试题(不断补充中)
- matlab简单处理图像
- Python 之多元线性回归分析
- ip 华三secondary_H3C交换机配置端口IP sub实例
- 有关E45: ‘readonly‘ option is set (add!to override)错误的解决方法
- C++实现截图截屏功能汇总
- office相关文件转pdf的几种方式