飞羽小随笔

猫盘群晖内网穿透npc打包全过程

本文主要内容是打包arm的spk文件,为以后自己方便查阅。

一、nps介绍

[collapse title="nps介绍" status="true"]
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。
balabala...具体详情请见github作者地址
[/collapse]

二、起因

[scode type="yellow"]
发现nps作者github下又群晖的安装包,但是是x86的,想着自己有个扎矿猫盘刷了群晖,是arm架构的,那么没办法,自己编译吧。-_-自己动手丰衣足食.jpg
[/scode]

三、逐渐的看代码过程。。。

pass
本次关键:从nps项目下的build.sh脚本看出来怎么部署,那么就按照build.sh脚本来吧
废话不说了 进入正题吧

四、正题开始

4.1 部署环境

[scode type="blue"]
首先安装docker,安装过程pass,不会的请参照本博客其他帖子。
[/scode]

4.2 下载nps、docker镜像、spksrc

root@server:~# mkdir WorkShop
#新建工作目录
root@server:~/WorkShop# https://github.com/ehang-io/nps.git
# git clone nps项目
root@server:~/WorkShop# git clone https://github.com/cnlh/spksrc.git ~/WorkShop/spksrc
# git clone spksrc项目
root@server:~/WorkShop# mkdir ~/WorkShop/spksrc/nps && cp -rf /root/WorkShop/nps/* ~/WorkShop/spksrc/nps/
# 拷贝文件
root@server:~/WorkShop/nps# docker pull synocommunity/spksrc
#拉取镜像 有点大-_-
root@server:~/WorkShop/nps# docker run -itd --name spksrc --env VERSION=0.26.6 -e GOPROXY=direct -v ~/WorkShop/spksrc:/spksrc synocommunity/spksrc /bin/bash
# 运行容器
root@server:~/WorkShop/nps# docker exec -it spksrc /bin/bash -c 'cd /spksrc && make setup && cd /spksrc/spk/npc && make'
# a few moments later...
# 先试着编译X86的 没问题进行下一步

[scode type="blue"]
到这里有两种方法,一种简单点,另一种需要改Makefile文件
[/scode]

[scode type="red"]
第一种方法
[/scode]

root@server:~/WorkShop/nps# docker exec -it spksrc /bin/bash -c 'cd /spksrc/spk/npc && make clean && cd /spksrc && make setup && cd /spksrc/spk/npc && make arch-aarch64'
# 直接加架构,编译成功
#可以直接把~/WorkShop/spksrc/packages/里的spk文件复制出来直接用了

[scode type="red"]
第二种方法
[/scode]

#更改Makefile
root@server:~/WorkShop/spksrc/spk/npc# pwd
/root/WorkShop/spksrc/spk/npc

[scode type="blue"]
把47行左右改为
[/scode]

ifeq ($(findstring $(ARCH),armada37xx),$(ARCH))
GO_ARCH = arm64
endif

[scode type="blue"]
之后执行一下代码,同样可以编译成功
[/scode]

root@harbor:~/WorkShop/spksrc/spk/npc# docker exec -it spksrc /bin/bash -c 'cd /spksrc/spk/npc && make clean && cd /spksrc && make setup && cd /spksrc/spk/npc && make arch-armada37xx-6.2'
root@harbor:~/WorkShop/spksrc/packages# pwd
/root/WorkShop/spksrc/packages
root@harbor:~/WorkShop/spksrc/packages# ls
npc_armada37xx-6.2_0.26.6-1.spk

[scode type="red"]
下载地址:https://github.com/balckwilliam/ds119j-nps/releases
[/scode]

其他架构请参照https://github.com/SynoCommunity/spksrc/wiki/Compile-and-build-rules

最后放一张截图

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »