开源 linux 路由器软件
***************************************************************************************************************************
作者: 时间:2014.10.26
类别:Linux应用-开源路由器的编译与下载 声明:转载,请保留链接
注意:如有错误,欢迎指正。这些是我学习的日志文章......
***************************************************************************************************************************
一:开源路由器简介与特性
是一个高度模块化、高度自动化的嵌入式Linux系统,拥有强大的网络组件和扩展性,常常被用于工控设备、电话、小型机器人、智能家居、路由器以及VOIP设备中。 同时,它还提供了100多个已编译好的软件,而且数量还在不断增加,而 SDK 更简化了开发软件的工序。
不同于其他许多用于路由器的发行版,它是一个从零开始编写的、功能齐全的、容易修改的路由器操作系统。实际上,这意味着您能够使用您想要的功能而不加进其他的累赘,而支持这些功能工作的linux 又远比绝大多数发行版来得新。
对于开发人员, 是使用框架来构建应用程序,而无需建立一个完整的固件来支持;对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。
二:开源路由器官网与下载
目前开源路由器的最新版本为: ( ) 14.07,当前主要更新和改进如下:
RC3 之后的重大改进 ath9k fixes
a few board fixes
fixes for on curl
per feed RC2 之后的重大改进
NAT &
for &
Minor fixes in DHCP &
for GRE
other 之后的重大改进
fix a long ath9k bug
all feeds are now built
image now works and RC2 all board
board/ fixes
since
and 更新到版本 3.10
Procd: new , init, and event in C
原生 IPv6 支持
RA & +PD and
Local & - () 文件系统改进
Added for on NAND-flash
Added for and
in C for and block 配置改进
for and to
last state
to on-
Added a data layer网络改进
now setup and of
Added event to allow -
Added for rules and zones
Added for to for
other fixes and 其他值得关注的 SDK 和其他重要改进
扩展 IPv6 支持
Added DS-Lite and 6to4, 6in4 and 6rd-
for , MAP-E and MAP-T
Draft- for self- home (HNCP)
rpcd: new over HTTP- for to ubus
mdns: new mdns (work in )
for the musl C
for QMI-based 3g/4g
for
Added for and 官方网址:,如下所示:
开发网址:,如下所示:
上图的红色圈中的部分,是告诉我们如何去下的代码,点击进入之后,可以看到有git和svn两种方法下载,不过我选择git的方式来下载。如下所示:
上图中蓝色圈中部分的为现在一直在开发的版本,而红色圈中的部分为版本,具体想下载那个版本,就看自己的想法啦,不过我建议是下载红色圈中的部分,在采用git命令下载之前,需要先确保自己的机器上是否有安装git-core,如果没有的话,请用 sudo apt-get git-core来安装git工具。安装完git工具之后,采用命令:git clone git:///14.07/.git下载,下载期间必须确保网络一直畅通。下载完之后的的目录基本结构如下所示:
之后需要采用命令:.//feeds -a去更新的源码包,如下所示:
更新完之后,需要采用命令:.//feeds -a去下载更新包,如下所示:
需要注意的是,这个时候并没有将的任何源码下载下来,而是需要通过make命令之后才会去下载项目中所需要的源码的,这一点请一定要注意哦,这也是为什么编译的速度会很慢的根本原因。在项目中有个文件,有些注意事项需要看看,如下所示:
上图中已经说的很清楚啦,首先需要安装一些必须的工具和第三方库,比如:gcc, , bzip2, flex, , perl, make, find, grep, diff, unzip, gawk, , , libz-dev and libc .安装完这些工具和三方库之后,就采用make 命令设置默认的配置文件,然后在这个配置文件的基础上去修改和配置自己项目所需的配置,后续的配置就都可以采用:make 来配置和修改,这个跟Linux配置菜单是一样的,当然里面的配置项目很多,需要花点时间去熟悉,目前我也在熟悉当中,不能讲太多的东西。
三:开源的编译
前面已经详细的介绍了如何下载,这个部分就简单地说明如何编译,编译过程出错之后,如何查看错误信息,一般来说,都是采用make命令来编译代码,如下所示:
而采用make V=s来编译和查看错误的信息。如下所示:
编译的过程会很漫长,这是因为在编译的过程中,会去下载相关的源码压缩包,一般第三方库是放在dl目录下,而其它的会放在目录下,如下所示:
四:开源的总结
在编译和下载过程中要非常有耐性,因为有些时候网络并不是很好,就需要去查找是哪里导致停止等等。。