基础工具之frp透传三:linux-arm ssh端口映射实现
frp新版本源码已经使用go,编译arm版本需要go-arm的开发环境实现交叉编译。
1 git下载
$git init
$git clone https://github.com/fatedier/frp.git
2 源码编译测试
$make
bin目录下会生成frps和frpc两个可执行文件,文件为linux-x86格式。
能够编译成功,表明源码没问题。
3 arm版本的编译脚本和编译
vim Makefile
修改编译指令
frps:
#env CGO_ENABLED=0 go build -trimpath -ldflags "$(LDFLAGS)" -o bin/frps ./cmd/frps
GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ AR=arm-linux-gnueabihf-ar go build -trimpath -ldflags "$(LDFLAGS)" -o bin/frps ./cmd/frps
frpc:
#env CGO_ENABLED=0 go build -trimpath -ldflags "$(LDFLAGS)" -o bin/frpc ./cmd/frpc
GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ AR=arm-linux-gnueabihf-ar go build -trimpath -ldflags "$(LDFLAGS)" -o bin/frpc ./cmd/frpc
$make
$file bin/frp*
看到如下部分,则表明交叉编译成功
~ELF 32-bit LSB executable, ARM,
4 测试
frpc在板卡上运行即可。
隔离在家,接到通知明天上班,搭建好的环境刚拆,不想接arm板子了。
ps:go的移植一直很稳,没翻过车,改天测试。