OpenWrt入门之编译
1. 概述
OpenWrt是一个针对嵌入式设备的 Linux发行版。有非常高的扩展性. 可以非常容易的
从零开始构建出来的全功能的路由器。
如果想从事OpenWrt开发,首先必须掌握如何编译OpenWrt, 本文从搭建环境,到编
译代码,到安装运行,一步一步教你如何从OpenWrt入门。
2. 编译环境搭建
硬件环境,首先需要有一台连接互联网的电脑,软件可以从网上下载。建议使用
VirtualBox虚拟机来编译及开发调试。
A. 安装虚拟机 virtualBox
B. 安装Ubuntu 10.4
至少需要 20G,建议预留 30G的编译空间。
C. 安装增强功能
共享剪切板和共享目录,在设备菜单下选择共享文件夹设置,创建一个共享目录。
然后在 linux下进行自动挂载设置。
vi /etc/fstab
增加一行
share /mnt vboxsf rw 0 0
D. 安装编译依赖包
需要安装以下包
subversion g++ git patch libncurses5-dev zlib1g-dev
安装命令 apt-get install subversion g++ git patch libncurses5-dev zlib1g-dev
需要管理员权限
3. 编译
A. 下载Openwrt核心代码
svn co svn://svn.openwrt.org/openwrt/tags/attitude_adjustment_12.09
1209
tag,标签,是一个软件配置管理的术语,存放较稳定版本的代码。
tags下为稳定版本代码,最近稳定版本是backfire_10.03.1和
attitude_adjustment_12.08
B. 准备代码包及Makefile
script/feeds update
./scripts/feeds install -a
该命令将安装所有的代码包编译选项。如果不运行该命令,在menuconfig配置时将没有选择机会。
script/feeds install
C. make menuconfig,我们没有真实的硬件环境,我们选择X86平台编译。
可以选择自己需要的软件包,例如网络开发最常用的软件包 tcpdump,调试代码工具
gdb,管理界面 luic等。
目录
Network ---> tcpdump
Utilities ---> gdb
LuCI ---> Translations ---> luci-i18n-chinese
luCI ---> Collections ---> luci
luCI --->Applications ---> luci-app-upnp
D. 编译
输入make命令就可以编译了,编译时需要联网下载代码,因为OpenWrt仅有编译
指令(Makefile),各种依赖代码在上游网站里面,其实OpenWrt也有代码镜像,
地址为 http://downloads.openwrt.org/sources/ 根据网速和选择软件的多少,
编译时间不同,大约需要三小时以上。
如果出现错误,请使用make V=s来查看具体错误信息。一般会遇到代码下载不到等问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
,
重新下载即可。
编译完成在bin目录下
内容如下
zhang@zhang-laptop:~/1209/bin$ ls x86/
md5sums
openwrt-x86-generic-combined-ext4.img.gz
openwrt-x86-generic-combined-jffs2-128k.img
openwrt-x86-generic-combined-jffs2-64k.img
openwrt-x86-generic-combined-squashfs.img
openwrt-x86-generic-rootfs-ext4.img.gz
openwrt-x86-generic-rootfs-jffs2-128k.img
openwrt-x86-generic-rootfs-jffs2-64k.img
openwrt-x86-generic-rootfs-squashfs.img
openwrt-x86-generic-rootfs.tar.gz
openwrt-x86-generic-vmlinuz
packages
4. 运行
首先将编译完成的安装文件拷贝出来,
cp openwrt-x86-generic-combined-ext4.img.gz /mnt/
我们选择 openwrt-x86-generic-combined-ext4.img.gz 来安装,首先解压缩,然后用
virtualBox来生成系统启动文件。
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe convertfromraw openwrt-
x86-gen eric-combined-ext4.img d:\openwrt1209.vdi
其次在虚拟机 virtualBox下,新建一个虚拟电脑,选择 openwrt1209.vdi并启动
设置windows8虚拟网卡(Host-Only)的 IP为 192.169.6.100
在OpenWrt中, 通过配置/etc/config/network设置网卡,eth0设置为通过
DHCP获得,可以访问外网,eth1设置为内网。
然后重启网络 /etc/init.d/network restart
这时再通过浏览器可以打开管理界面,
http://192.168.6.1,如果能打开输入需要输入密码的管理界面,那恭喜你,
openwrt安装成功了。
5. 出现问题的解决方法
如果虚拟机和window8之间不能访问,请查看windows8的防火墙设置,
可以关闭windows8的防火墙。
6. 参考资料
VirtualBox https://virtualbox.org/ 2013/11/17
http://wiki.openwrt.org/about/start 2013/11/17
ubuntu10.4.4 http://mirrors.sohu.com/ubuntu-
releases/10.04.4/release/ 2013/11/17
张于 2013.11.24 于北京西城区莲花池东路
1. 概述
2. 编译环境搭建
3. 编译
4. 运行
5. 出现问题的解决方法
6. 参考资料