摘要:
GOOS和GOARCH
分别代表编译的目标系统和平台,可选值如下:
GOOS | GOARCH |
darwin | 386 |
darwin | amd64 |
dragonfly | 386 |
dragonfly | amd64 |
freebsd | 386 |
freebsd | amd64 |
freebsd | arm |
linux | 386 |
linux | amd64 |
linux | arm |
netbsd | 386 |
netbsd | amd64 |
netbsd | arm |
openbsd | 386 |
openbsd | amd64 |
plan9 | 386 |
plan9 | amd64 |
solaris | amd64 |
windows | 386 |
windows | amd64 |
需要注意的是这两个值代表的是目标系统和平台,而不是编译源代码的系统和平台。树莓派的RaspBian是linux系统,所以这些GOOS设置为linux,GOARCH设置为arm。
命令:
Linux 下编译 Mac 、 Windows 64位和ARM可执行程序
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=linux GOARCH=arm go build main.go
相关文章:
在ARM平台上编译安装golang
Golang 在 Mac、Linux、Windows 下如何交叉编译
golang交叉编译