golang的交叉编译要保证golang版本在1.5以上,本解决方案实例代码1.9版本执行的。
GOOS=linux GOARCH=amd64 go build hello.go
这里用到了两个变量:
GOOS:目标操作系统
GOARCH:目标操作系统的架构
OS | ARCH | OS Version |
---|---|---|
linux | 386 / amd64 / arm | >= Linux 2.6 |
darwin | 386 / amd64 | OS X (Snow Leopard + Lion) |
freebsd | 386 / amd64 | >= FreeBSD 7 |
windows | 386 / amd64 | >= Windows 2000 |
编译其他平台的时候根据上面表格参数执行编译就可以了。