OpenWrt 下如何编译 passwall 插件. Nanopi… | by More Less | Medium
2023-7-3
| 2023-7-16
0  |  0 分钟
type
status
date
Jul 3, 2023 02:08 PM
slug
summary
tags
category
icon
password
Nanopi R5S 是 friendly 友善电子设计制造的一个非常小巧的类似树莓派一样的开发板。
[
notion image
](https://moreless.medium.com/?source=post_page—–e1c7cc7ae682——————————–)
Nanopi R5S 是 friendly 友善电子设计制造的一个非常小巧的类似树莓派一样的开发板。
notion image
主控芯片是瑞芯微公司出品的 Soc,Rockchip RK3568B2,是 Arm A55 架构。有两个 2.5G Lan 口,一个 1G Wan 口。带两个 USB-A 3.0 的接口,还有一个 HDMI 接口,应该也可以做电视盒子。也很适合装 OpenWrt 做软路由。
安装了 OpenWrt 后,wan 口和 lan 口可以随便互换。
notion image
OpenWrt 是一个开源的路由器嵌入式操作系统,其源码来自于多年前 2004 年 Linksys 一款非常著名的 802.11G 无线路由器 WRT54G,wrt 就是 wireless router 的意思。因为其使用了开源软件的代码却没有按照开源软件的 license 公开源码,被权益团体告,最后不得不公开源码。公开的源码经开源社区不断地二次开发,也衍生出了像 dd-wrt 和 OpenWrt 这样在开源社区很成熟的路由器固件产品。顺便提一句,小米的很多无线路由器,直接用了 OpenWrt 的代码做二次开发,却不公布源码,这就只能用无耻来形容了。
OpenWrt 跟传统消费类路由器的固件相比,root 目录可写,而不是制度。以此可以安装很多插件,灵活性高,功能强大。墙内用户用 OpenWrt 主要是为了安装包括科学上玩插件在内很多插件。
passwall 就是一款非常著名的科学上网插件。
我从这个网站下载了一个 passwall 的 ipk,安装以后就显示缺了一堆相关的 library。
于是还是从源码开始自己编译比较方便。
R5S 的 Wiki 上详细介绍了怎么自己搭建环境下载 sdk 编译 OpenWrt 的插件。
首先下载这个脚本,搭建编译环境。我是在 ubuntu 20.04 上完成的。这个脚本是 for 18.04,但是亲测可用。
然后下一步就是从 OpenWrt 的官方网站下载 OpenWrt 的 sdk,解压并编译。
notion image
咱们的软路由上安装的是 OpenWrt21.02.3 版本,于是到 OpenWrt 的相应版本找瑞芯微的 sdk。
notion image
下载解压后,就要加上 passwall 的 package 源。
根据这个 git repo https://github.com/kenzok8/small 的介绍,把下面两个源加进 feed.conf.default 即可。
把这个源也加上。
根据介绍,还要在 ubuntu 安装 upx。
之后就可以按照步骤编译了。
第一次编译在 v2ray-core 的时候出错。然后按照这个 issue 的教程,替换了 golang 的版本,第二次编译比较久,但是成功了。估计 ubuntu 机器的 cpu 比较老旧,如果用 windows 的 wsl 编译可能会更快一些。
编译成功之后生成了这些 ipk 文件。
把所有这些 ipk 文件都 copy 到 R5S 的 OpenWrt 系统 root 目录下。用 opkg install 先安装除下面连个 ipk 之外的 ipk。
再安装这两个,系统就会自动下载依赖包,安装就轻松搞定了。
参考链接:
技术折腾
  • 中国网络
  • openwrt
  • 操作系统
  • 解决 openwrt 旁路由访问国内网络慢的问题WARNING: Makefile 'package/luci-app-openclash/luci-app-openclash/Makefile' has a dependency on 'kmod-inet-diag', which does not exist
    目录