无线路由开发平台openwrt的编译和使用
来源:互联网 发布:高清半球网络摄像机 编辑:程序博客网 时间:2024/04/29 20:25
学期末的课程设计出了个题:无线路由器的软件开发。
平台就是openwrt。openwrt是由Cisco放出源代码的开放无线路由平台。由于是基于linux内核,所以可以将很多linux平台下的软件移植到此平台下,然后让无线路由拥有很多意想不到的功能,例如拿来做BT下载器,音乐播放器,小型数据库处理等等。
环境:
Ubuntu 10.04,subversion,VMware workstation 7.1.3
首先是得到openwrt的源代码。
在Ubuntu下,首先安装上svn工具:
sudo apt-get install subversion
然后装上各种依赖关系包:
sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversi-dev ncurses-term zlib1g-dev
sudo apt-get update
然后进入home目录,建立文件夹:
makedir /openwrt
cd /openwrt
然后使用svn命令行checkout出源代码:
svn checkout svn://svn.openwrt.org/openwrt/trunk
进入trunk文件夹:
cd trunk
更新openwrt:
./scripts/feeds update -a
安装所有包:
./scripts/feeds install -a
这个时候,我觉得有必要把LUCI编译进内核,这样就方便以后我们通过web来控制openwrt,而不是通过命令行来控制了。所以加上以下命令:
./scripts/feeds update packages luci
./scripts/feeds install -a -p luci
这样之后,在编译内核时才会出现LUci选项。
由于我没有Linksys系列的路由器,而且只是为了体验openwrt,所以我就把openwrt编译成VMware workstation的磁盘镜像,使用VMware workstation来模拟一台路由的硬件环境。
以下为符合此情况的配置:(由于编译时会继续从网络上下载相应的包,所以一旦开始编译,就不要断开连接。但是遇到很大的包,但是下的很慢的,可以中断过程,使用下载过程去相应的网站上下载之后放入)
首先输入make menuconfig,开始进入内核配置界面:
1. Target System (x86) ---> (X) x86
2. 配目标文件系统为 EXT2
Target Images ---> [*] ext2
Target Images ---> [*] Build VMware image files (VMDK)
这样就后面编译时产生可以直接在 VM 上用的虚拟硬盘。
配 Web UI :
1) Base system ---> <*> uci................ Utility for the Unified Configuration Interfa
2) LuCI都选上
3) Network --->
<*> uhttpd........................ uHTTPd - tiny, single threaded HTTP server --->
<*> uhttpd-mod-lua... uHTTPd - tiny, single threaded HTTP server (Lua plugin)
4) make V=99 编译,时间有点长,完后,在 bin/x86/ 就是最后编译出来的文件了。
5) 拷贝 bin/x86/ ,我的全部路径是 /home/longjindong/openwrt/trunk/bin/x86/ 中的 “openwrt-x86-genericcombined-ext2.vmdk”到 XP 电脑上;
XP VM 安装运行 OpenWRT:
1. 创建一个虚拟机
打开 VMware --> New --> Virtual Machine ... --> 下一步 --> 下一步 --> linux 、Other Linux 2.6.x kernel --
> 下一步 --> 这里Vm名和路径可以自己指定 --> 下一步 --> 网络默认“Use bridged networking” --> 下一步 --> 这
里的硬盘大小用默认,反证一会要被删掉 --> 完成;这样在 VMware Workstatio 里有“Other Linux 2.6.x kernel”的虚
拟机了。
2. 加载 OpenWRT 虚拟盘并启动
1) 删创建虚拟机时的虚拟盘
右击 “Other Linux 2.6.x kernel” -- > Setting --> Hard Disk --> Remoe;
2) 加载 OpenWRT 虚拟盘
“Other Linux 2.6.x kernel” -- > Settin --> Add --> Hard Disk --> Next --> Use an existing virtual disk --
> Browse ,选前面 “openwrt-x86-generic-combined-ext2.vmdk” --> Finish.
3) 点 run 按钮就可以开始运行 OpenWRT。
上图:
输入192.168.1.1,就可以在浏览器里看见:
这只是编译内核部分,以后把相关的设置和软件开发方面慢慢写出来吧。
本文出自 “SandT” 博客,请务必保留此出处http://wenix.blog.51cto.com/874806/469198
- 无线路由开发平台openwrt的编译和使用
- 无线路由开发平台openwrt的编译和使用
- 无线路由开发平台openwrt的编译和使用——生成虚拟机安装文件
- 编译极路由的OpenWRT固件
- openwrt 查看wr703n路由上的无线链接数
- 无线AP和无线路由的区别
- MW4530R Openwrt 无线路由中继设置
- freebsd平台编译openwrt
- 在openwrt平台,开发自己的模块
- [AP]无线AP和无线路由的区别
- 嵌入式openwrt平台(mt7688)上使用讯飞语音服务以及编译好的库文件
- OPENWRT使用命令行设置无线和有线网络
- OPENWRT使用命令行设置无线和有线网络
- OPENWRT使用命令行设置无线和有线网络
- OPENWRT使用命令行设置无线和有线网络
- OPENWRT使用命令行设置无线和有线网络
- openwrt交叉编译自己的应用程序(openwrt应用开发)
- 【中山大学东校区】【wr703n】【openwrt】【ipv6】无线路由子网下设备的Ipv6访问
- ubuntu下svn工具Rabbitvcs安装
- freemarker 自定义变量
- Java 学习笔记10:获取POST数据以及简单模板输出
- python下的MySQLdb使用
- 项目使用Build And Analyze分析常见提示
- 无线路由开发平台openwrt的编译和使用
- java 获取文件夹大小,文件大小,文件个数
- openGL相关博客
- Ubuntu 12.04安装Google Chrome
- 计算机方向期刊和会议
- vs2010连接 mysql
- JavaScript用匿名闭包封装模块
- iOS 第三方应用调用safari---------杭州卓健信息科技有限公司
- Oscar的安装配置