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 |