1.下载 Golang 的 Windows 版本并安装,如 1.14.x 或 1.13.x
官网:https://golang.org/dl
或者:https://studygolang.com/dl
安装后,打开 PowerShell 并执行:
go env -w GO111MODULE=on GOPROXY=https://goproxy.cn,https://goproxy.io,direct
2.下载 v2fly 的 v2ray-core 代码并解压
https://github.com/v2fly/v2ray-core/archive/master.zip
解压后,在文件夹内按住 Shift 同时单击右键,打开 PoweShell 并依次执行:
$env:CGO_ENABLED=0
go build -o v2ray.exe -trimpath -ldflags "-s -w" ./main
go build -o wv2ray.exe -trimpath -ldflags "-s -w -H windowsgui" ./main
go build -o v2ctl.exe -trimpath -ldflags "-s -w" -tags confonly ./infra/control/main
将编译到当前目录。geoip.dat 和 geosite.dat 在 ./release/config/ 文件夹下。
第一次编译会自动下载依赖代码,也没有之前的编译缓存,所以编译速度会相对慢一些。
3.交叉编译,这里以编译到 ac86u 路由器为例
$env:CGO_ENABLED=0
$env:GOOS="linux"
$env:GOARCH="arm"
$env:GOARM=7
go build -o v2ray -trimpath -ldflags "-s -w" ./main
$env:GOARM=5
go build -o v2ctl -trimpath -ldflags "-s -w" -tags confonly ./infra/control/main
上传到服务器后,记得在服务器终端内执行 chmod +x v2ray
和 chmod +x v2ctl
提示:PowerShell 执行 go tool dist list
查看所有支持的系统与架构。
原文档请参照