- 在Linux下可以很简单的使用前缀来进行交叉编译
GOOS=windows GOARCH=amd64 go build
- 但Windows下需要手动修改
go env
中的变量 - 并且cmd和powershell命令不同
cmd
set GOARCH=amd64
set GOOS=linux
go build
Powershell
$env:GOOS="linux"
$env:GOARCH="amd64"
go build
- 注意:Powershell 使用 set命令是不会报错的,然而就是不会更改 go env 中的环境变量。
- 还有别忘记编译后把环境变量改回来!
- 推荐使用 WSL, 基于Windows 10 的最好的Linux发行版(