一、搭建Ubuntu环境、本身解决、我用的是VirtualBox 感受不错 python
二、打开“终端”。首先输入 sudo –sH 大小写注意!建议直接复制粘贴。而后输入装系统时设置的用户密码,就能切换到root(提示:输入密码的时候不会有*****之类的显示的,是彻底不显示,部分人没必要惊慌)。切换到root是为了安装或升级部分必要的组件,有些组件须要root权限。 git
三、依次输入以下命令(仍是复制粘贴吧) svn
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 post
apt-get install git
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 flex
每一行回车后都会检测安装或升级某个组件,一条一条命令的输入方便检查哪里出错了、从新输一遍就ok,有的命令会提示要下载东西、输入“Y”回车 就能够了。 es5
四、上述安装完成后,必定要进行这一步,就是执行 exit 命令退出root。 操作系统
五、到这里操做系统部分已经搞定了。距离成功之差一小步了。 code
六、下载源码。分两种,一种是最新版但不是最稳定,trunk 版,一种是相对稳定版,backfire 版。 blog
下载命令分别是: ip
先建立文件夹:(为了方便存放不一样类别的代码,若是你不须要,能够省略“mkdir openwrt”及“cd openwrt”。)
mkdir openwrt
cd penwrt
而后继续输入,选择版本下载(2选1便可,参考第6项)
Trunk版下载命令:svn co svn://svn.openwrt.org/openwrt/trunk/
Backfire下载命令:svn co svn://svn.openwrt.org/openwrt/branches/backfire/
等待。。。。。。要下载很久
七、开始准备编译
输入命令:(下载的哪一个版本的就输入哪一个)
cd trunk或者cd backfire
为了保持代码为最新状态,应该按期运行svn up更新代码
接下来更新软件包:
./scripts/feeds update -a
./scripts/feeds install -a
而后是
make defconfig
make menuconfig
而后再次过程当中选择好target system和target profile,target system须要看你路由器的cpu芯片信息,target profile是你路由器的型号。接下来就能够根据本身的需求进行定制了,添加上须要的支持或去掉无用的包,按“Y”在固件中添加包按“Y”,按“N”去 掉不须要的包。
要运行OH3C,必须有python-mini(lang->python->python-mini)的支持。
若是你的路由器flash空间比较紧张,能够去掉下面的包:
-
Kernel modules->Network Support->kmod-ppp
-
Network->ppp
选好后就保存配置退出开始编译了:
make -j
-j 后面能够跟参数,即同时进行的任务数,好比make -j2,不跟参数意为不限制同时进行的任务数,会大大减小编译的时间,特别是首次编译。
八、生成的固件在~/openwrt/trunk/bin/XXXXX目录下。