Go 语言在同一台机器上打包多平台程序
go语言的 go build 命令是支持在同一台机器上,打包别的平台的程序的。
命令如下
env GOOS=target-OS GOARCH=target-architecture go build package-import-path
解释一下
GOOS: 设定目标操作系统
GOARCH:设定目标系统架构
举个例子
env GOOS=windows GOARCH=amd64 go build xmanyou.com/demoapp
这个命令,用来打包64位windows的程序。
参数索引
具体的GOOS和GOARCH参数列表如下:
| GOOS - Target Operating | System GOARCH - Target Platform | 
|---|---|
| android | arm | 
| darwin | 386 | 
| darwin | amd64 | 
| darwin | arm | 
| darwin | arm64 | 
| dragonfly | amd64 | 
| freebsd | 386 | 
| freebsd | amd64 | 
| freebsd | arm | 
| linux | 386 | 
| linux | amd64 | 
| linux | arm | 
| linux | arm64 | 
| linux | ppc64 | 
| linux | ppc64le | 
| linux | mips | 
| linux | mipsle | 
| linux | mips64 | 
| linux | mips64le | 
| netbsd | 386 | 
| netbsd | amd64 | 
| netbsd | arm | 
| openbsd | 386 | 
| openbsd | amd64 | 
| openbsd | arm | 
| plan9 | 386 | 
| plan9 | amd64 | 
| solaris | amd64 | 
| windows | 386 | 
| windows | amd64 |