CentOS 搭建Openwrt开发环境

本来只是想建立交叉编译环境编译一些自己的代码放在wr703n路由器上运行,但是现在官方的 tool-chain 解压修改PATH之后编译的时候发现并不能用,后来在把问题发到openwrt编译群中求助大神,得到的结论是:下载的交叉编译链和电脑的架构不同,不能使用。也就是说只能下载openWRT的源码,自己进行配置并生成SDK才可以,没办法只好开始和了编译openWRT源码的历程

首先下载 openwrt源码

openwrt的源码实施了版本控制,可以使用git 或者 svn进行克隆

git::

git clone git://git.openwrt.org/14.07/openwrt.git

svn:

svn co svn://svn.openwrt.org/openwrt/trunk/本人用的是git进行下载的,首先需要安装git

yum install git

然后使用上边的clone 命令进行下载源代码,网速好的话 一会儿就下载好了,笔者受网速限制,第六次尝试下载的时候终于下载完整了。

然后可以切换到源码目录 make menuconfig

此时会报一大堆的 需要解决的依赖,一个个解决就OK 了,此处简单介绍一下笔者受困的几个依赖

1、g++  用yum 进行安装比较方便,但是 g++ 包的名字叫 gcc-c++ 因此安装的时候需要用 yum install gcc-c++命令

2、zlib静态库,此依赖比较麻烦需要上网自己下载

wget http://zlib.net/zlib-1.2.8.tar.gz  (由于此源码还在不断更新,因此版本号可能有些出入,当出现404 页面找不到时可以通过浏览器登录zlib.net/ 查看当前的版本号)

下载完成后  进行解压安装。

#tar -zxvf zlib-1.2.8.tar.gz  #解压

#cd  zlib-1.2.8

#./config

#make

#make install

3、openssl library development  此依赖的包名是 openssl-devel 所以需要用yum install openssl-devel 进行安装

所有依赖都解决完后,再添加一个普通用户(原则上openwrt 不允许使用root用户进行编译).

make menuconfig

将 有SDK字样的行 标记 退出,保存配置文件,make 开始编译。

编译过程需要联网,编译速度根据网速而定。

编译会生成 sdk ,安装sdk配置完后就可以用来编译打包自己的ipk软件包了。

相关推荐