Linux编译Frp

1,设置环境变量
sudo vim /etc/profile
export GOROOT=/opt/go 
export GOPATH=/home/work/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOROOT/bin:GOBIN
source /etc/profile  #一定要生效

2,查看环境变量
root@ubuntu:/home/work# go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/root/goproject"//设置的环境变量
GORACE=""
GOROOT="/opt/go"//设置的环境变量
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build157473633=/tmp/go-build -gno-record-gcc-switches"

2,设置代理(否则从org下载会报错):
   go env -w GOPROXY=https://goproxy.cn

3,下载、编译
go get -u github.com/fatedier/frp
cd /root/goproject/src/github.com/fatedier/frp  //cd到$GOPATH下面的目录
make -f Makefile.cross-compiles
或者 
sudo make


常见错误:
env CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -trimpath -ldflags "-s -w" -o ./release/frpc_darwin_amd64 ./cmd/frpc
flag provided but not defined: -trimpath
usage: build [-o output] [-i] [build flags] [packages]
Run 'go help build' for details.
Makefile.cross-compiles:10: recipe for target 'app' failed
make: *** [app] Error 2

解决方法:下载最新的go

直接运行:

1,cd frp
2,go run ./cmd/frps    注意不是main.go
  • 如何Debug? 有可能需要安装最新版或者升级golang才能调试(因为go的版本可能跟golang ide调试器的版本不匹配)
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/PZ0605/article/details/110262818
frp