JS9331-openwrt-lede环境搭建
openwrt环境搭建
不要用Ubuntu12,版本太老,源无法使用,也会有报错。
不建议使用Ubuntu18,淘宝店主自带的源码在18上有报错
淘宝店主自带的源码(百度网盘),建议使用Ubuntu16可正常编译
链接:https://pan.baidu.com/s/1q61h_ooKkwRrC0h7NJzeeg
提取码:r0vs
最新的官方openwrt git 克隆下来的master建议用18,附官方git链接
git clone git://git.lede-project.org/source.git lede_sourc
以下为使用Ubuntu16编译环境搭建过程
安装依赖
sudo apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-dev xsltproc
拷贝源码
在“JS9331 开发板配套资料\开发板源码\openwrt 源码\lede_AR9331_zhuotk_source_32bit_xx.tar.bz2”
(xx 是日期,采用 64 位 ubuntu 的用户请用lede_AR9331_zhuotk_source_64bit_xx.tar.bz2)
里面已经提供了下载好的 openwrt 源码,此源码已经更新了安装包、根据 JS9331 开发板功能进行了修改,读者可以将该安装包拷贝到当前
登录 ubuntu 的用户的工作目录中(即~/目录下),执行下面命令解压源码
tar xjvf ./lede_AR9331_zhuotk_source_64bit_20170808.tar.bz2 -C ./
cd lede_AR9331_zhuotk_source_64bit/ //进入源码目录
./scripts/feeds install -a //安装更新的软件包
设置编译选项
进入源码根目录
make menuconfig //进入 OpenWrt 系统配置界面,更新.config
如果和我买的一样的开发板则不用更改,exit退出即可
拷贝墙外资源
因为墙和距离的原因,许多资源无法正常访问或者下载一半断了,建议使用预下载好的文件放在根目录下减少下载失败的问题
在网盘/JS9331 开发板配套资料\开发板源码\openwrt 源码\dl
将整个dl目录拷贝到openwrt源码根目录下
编译 OpenWrt 源码
make V=s //编译源码,如果遇到报错则仅使用make V=s来查看具体错误
或者 make V=s -j 16 //如果想要快速编译则设置多线程编译,但是不方便查看报错,4核8线程CPU以线程数8为主,乘2则是建议的数字16
编译完成后的 OpenWrt 固件可以在“openwrt 源码根目录/bin/targets/ar71xx/generic/”下找到
形如lede-ar71xx-generic-tl-wr720n-v3-squashfs-sysupgrade.bin
刷新 OpenWrt 固件
有关如何刷新 OpenWrt 固件,在《JS9331 开发板使用手册》中的“openwrt 固件烧写说明”一节中已有叙述,这里不再赘述。
生成交叉编译工具链
用户如果想自己编译获得 openwrt 的交叉工具链,只需要在 openwrt 的 menuconfig 顶
层配置界面中,勾选上“Package the LEDE-based Toolchain”,如下图所示。
然后保存退出,再 make V=s,生成的交叉工具链将在“openwrt 源码根目录/
bin/targets/ar71xx/generic/ lede-toolchain-ar71xx-generic_gcc-5.4.0_musl.Linux-i686.tar.bz2”
(32 位交叉编译工具)下找到。
提示:不方便编译的用户,可以在“JS9331 开发板配套资料\JS9331 开发板固件镜像安装包\交叉工具链”
中找到编译好的有 32 位也有 64 位的 openwrt 交叉工具链,可以直接拿来使用。
安装交叉工具链
openwrt 交叉工具链和一般的 linux 软件包一样,需要将其解压到需要安装的目录中,
然后设置环境变量即可。下面是安装步骤。
1)解压交叉工具链压缩包
这里我们演示将交叉工具链安装到 ubuntu 的“/opt”目录下。首先切换到 openwrt 源
码的根目录下,输入如下命令:
sudo tar xjvf ./bin/targets/ar71xx/generic/lede-toolchain-ar71xx-generic_gcc-5.4.0_musl.Linux-x86_64.tar.bz2 -C /opt
提示输入超级用户密码后,系统将交叉工具链压缩包解压到 ubuntu 系统的/opt/目录下。
2)设置环境变量
sudo vi /etc/bash.bashrc
在最后一行添加
export PATH=/opt/lede-toolchain-ar71xx-generic_gcc-5.4.0_musl.Linux-x86_64/toolchain-mips_24kc_gcc-5.4.0_musl/bin:$PATH
export STAGING_DIR=/home/marvin/lede_AR9331_zhuotk_source_64bit/staging_dir
注意上面这个“STAGING_DIR”变量中的“your_openwrt_path”是读者实际放 openwrt
源码的根目录,如果这个“STAGING_DIR”变量不设置的话,会在用交叉工具链编译文件时
有警告,但是不影响编译结果。
最后保存退出。
接着在终端执行以下命令:
source /etc/bash.bashrc
3)检查是否安装成功
mips-openwrt-linux-gcc -v