Lxn-Chan!

(~ ̄▽ ̄)→))* ̄▽ ̄*)o

个人记录,仅供参考(还未写完,敬请关注)

事先说明

  1. 本文仅为本人操作过程,仅供参考。

环境准备

操作系统

这里使用 Ubuntu 20.04 LTS Server ,其他系统可酌情参考。因系统限制区别等因素,建议不要擅自更改系统、Clone的源码以及系统文件的权限,否则可能无法正常编译

镜像源选择的是清华大学开源软件镜像站

请尽可能不用WSL编译,由于权限和底层程序不同可能导致无法编译。

安装依赖

1
2
3
4
5
sudo apt update
sudo apt install unzip libtool-bin curl cmake gperf gawk flex bison nano xxd \
fakeroot kmod cpio git python3-docutils gettext automake autopoint \
texinfo build-essential help2man pkg-config zlib1g-dev libgmp3-dev \
libmpc-dev libmpfr-dev libncurses5-dev libltdl-dev wget libc-dev-bin

准备源码

1
2
# 需要提前在Github上添加你的SSH Key。
git clone --depth=1 git@github.com:LxnChan/Padavan.git /opt/rt-n56u

源码的存放位置是固定的,只能为/opt/rt-n56u

准备工具链

进入工具链目录

1
cd /opt/rt-n56u/toolchain-mipsel

这里提供两种方案:下载已经编译好的工具链;从源码现场编译工具链。

下载工具链,直接执行:sh dl_toolchain.sh

现场编译:

1
2
./clean_toolchain
./build_toolchain

预编译

这一步只是确保下载的源码没有错误可以正常编译,方便日后修改除错。

1
2
3
4
5
# 进入目录
cd /opt/rt-n56u/trunk

fakeroot ./build_firmware_modify MI-R4A
# 脚本第一个参数为路由型号,在./trunk/configs/templates/中,例如MI-R4A,不填写后面的.config

编译好的固件在/opt/rt-n56u/trunk/images里,trx后缀的即为固件文件。

首次编译完成后,如果需要再次编译其它固件,需要执行清理脚本:./clear_tree

稍后等待片刻即可,2C4G 60GSSD 的服务器大约编译用时10-20分钟。

预编译时可能遇到的问题:
如果提示SoftEtherVPN相关无法编译则到./trunk/configs/templates/中寻找对应设备的配置文件,将CONFIG_FIRMWARE_INCLUDE_SOFTETHERVPN_SERVERCONFIG_FIRMWARE_INCLUDE_SOFTETHERVPN_CLIENT两项后面的值全部改为n后再重新尝试。

 简单说两句



联系站长 | 服务状态 | 友情链接

备案号:辽ICP备19013963号

萌ICP备 20219421 号

津公网安备12011602300394号

中国互联网违法和不良信息举报中心

架构版本号:8.1.6 | 本站已全面支持IPv6

正在载入运行数据(1/2)请稍后...
正在载入运行数据(2/2)请稍后...

Copyright 2024 LingXuanNing, All rights reserved.