Go 1.5的交叉编译非常简单,基本用法如下:
GOOS=os GOARCH=arch go build packages
os: darwin
, freebsd
, linux
, windows...
arch: 386
, amd64, arm...
os和arch的组合可参考: https://golang.org/doc/install/source#environment
交叉编译的过程比较慢,因为go会把所有依赖的包(包括标准库)用指定的架构体系重新编译一遍。
另外,在交叉编译时应当使用 go build,而不是 go install,因为 go install 会把编译出来的 *.a 库文件写入 $GOROOT/pkg 或者 $GOPATH/pkg 目录,这可能并不是你所希望的。
来源:oschina
链接:https://my.oschina.net/u/138837/blog/551529