个人记录,仅供参考(还未写完,敬请关注)
事先说明
- 本文仅为本人操作过程,仅供参考。
环境准备
操作系统
这里使用 Ubuntu 20.04 LTS Server ,其他系统可酌情参考。因系统限制区别等因素,建议不要擅自更改系统、Clone的源码以及系统文件的权限,否则可能无法正常编译。
镜像源选择的是清华大学开源软件镜像站 。
请尽可能不用WSL编译,由于权限和底层程序不同可能导致无法编译。
安装依赖
1 | sudo apt update |
准备源码
1 | # 需要提前在Github上添加你的SSH Key。 |
源码的存放位置是固定的,只能为/opt/rt-n56u
。
准备工具链
进入工具链目录
1 | cd /opt/rt-n56u/toolchain-mipsel |
这里提供两种方案:下载已经编译好的工具链;从源码现场编译工具链。
下载工具链,直接执行:sh dl_toolchain.sh
。
现场编译:
1 | ./clean_toolchain |
预编译
这一步只是确保下载的源码没有错误可以正常编译,方便日后修改除错。
1 | # 进入目录 |
编译好的固件在/opt/rt-n56u/trunk/images
里,trx
后缀的即为固件文件。
首次编译完成后,如果需要再次编译其它固件,需要执行清理脚本:./clear_tree
。
稍后等待片刻即可,2C4G 60GSSD 的服务器大约编译用时10-20分钟。
预编译时可能遇到的问题:
如果提示SoftEtherVPN
相关无法编译则到./trunk/configs/templates/
中寻找对应设备的配置文件,将CONFIG_FIRMWARE_INCLUDE_SOFTETHERVPN_SERVER
和CONFIG_FIRMWARE_INCLUDE_SOFTETHERVPN_CLIENT
两项后面的值全部改为n
后再重新尝试。