February 12, 2024

利用云主机编译Lean的OpenWRT固件

书接上会,之前用N100作为软路由。N100一切都挺好,但是功耗有点高,而且机器占地面积也有点大。同时所有功能都集成在N100的话,N100一旦重启,家里整个网络就崩了。还是有一个自己独立的软路由机器比较安全。 挑了一圈淘宝,还是友善家的R5C比较小巧好看。选好机器,接下来就是寻找固件了。可惜R5C的固件有点少,想想还是直接自己编译一个固件算了。 准备工作 国内用户最好有梯子环境 Ubuntu 22.02 LTS 推荐配置机器的内存大于等于4GB 这里需要注意Ubuntu一定要是22.02 LTS,否则编译会出错。因为新的固件GCC版本已经到11,老的Ubuntu 18 GCC是9版本,GCC9编译会出现语法不兼容的问题。 其次一个重要的地方是需要有梯子,很多源码下载牵涉到链接github或者openwrt官网,没有梯子的话很容易因为文件下载失败重启。 最后内存大于等于4GB非常重要,编译过程中有一个步骤会使用大概2.7GB内存,内存太小的话,会直接编译失败。用swap内存也没办法解决这个问题。 为了简单的完成环境搭建,我就直接用中国香港的腾讯云配置环境了。腾讯云可以按量计费,配置的机器是SA5 4核16GB内存(AMD Yes)的机器,一个小时的开销大概是1.6元。 编译命令行 Lean大神的Git上,其实已经把编译的步骤写的非常清晰了。推荐不要使用root账号编译,因为腾讯云默认登陆的用户是ubuntu。 我这里就按照R5C的配置过程写一下: sudo apt update -y sudo apt full-upgrade -y sudo apt…