Prerequisite
在安装Golang的时候, 只是编译了local operating system 需要的库文件; 而需要跨平台交叉编译, 需要在Golang中增加对其他平台的支持,
make.bash 就是来做这件事的.
Environment variables make.bash supports
- GOARCH: The target architecture for installed packages and tools. Examples are
amd64,386,arm,ppc64. - GOOS: The target operating system for installed packages and tools. Examples are
linux,darwin,windows,netbsd. - CGO_ENABLED: Controls cgo usage during the build. Set it to 1 to include all cgo related files,
.cand.gofile with “cgo” build directive in the build.
Run make.bash
$ cd /usr/local/go/src/
$ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash
$ CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash
$ CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 ./make.bash
Cross Compiling
$ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
$ CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
$ CGO_ENABLED=0 GOOS=windows GOARCH=386 go build
