三、编译固件
1.准备编译环境(推荐使用Ubuntu系统)
以Ubuntu 14.04 x64为例,安装编译所需工具和库。
$ sudo apt-get install git-core build-essential libssl-dev libncurses5-dev unzip
$ sudo apt-get install subversion mercurial
$ sudo apt-get install build-essential subversion libncurses5-dev zlib1g-dev gawk gcc-multilib flex git-core gettext libssl-dev
2.获取源码
从github获取最新的源码并升级模块。
$ git clone git://git.openwrt.org/openwrt.git
$ cd openwrt
$./scripts/feeds update -a
$./scripts/feeds install –a
3.编译配置
配置.config文件。
$ make defconfig
$ make prereq
$ make menuconfig
选项配置好后先Save为.config再Exit。
注:一定要在Target System和Target Profile选择正确硬件型号,其他模块可自行选择设置。
4.开始编译
使用make编译,其中多核心CPU可使用-jn参数加速,参数V设99或s可显示详细过程。
$ make –j2 V=99
5.完成编译
经过漫长的编译过程之后,可以在openwrt/bin/ar71xx路径下看到如下已编译好的固件。
openwrt-ar71xx-generic-tl-wr720n-v3-squashfs-factory.bin
openwrt-ar71xx-generic-tl-wr720n-v3-squashfs-sysupgrade.bin
四、修改固件头
根据OpenWrt的如下官方描述可知,只需替换v3.0的固件头信息即可用作v4.0的固件。
The hardware of v4.0 is almost the same asv3.0 so firmwares for v3.0 just work. The version number in images for v4.0 is0x07200104 (0x07200103 for v3.0).
1.修改工具
这里推荐使用“TP路由固件修改工具”。
当然也可以使用16进制编辑器手工查找(需要一定基础和经验)并修改。
2.替换固件头信息
根据官方建议将“07200103”改为“07200104”即可(最好提前备份原版固件)。
参考资料:
【1】http://wiki.openwrt.org/doc/howto/buildroot.exigence
【2】http://wiki.openwrt.org/toh/tp-link/tl-wr720n