1. 程式人生 > >go跨平臺編譯(交叉編譯)

go跨平臺編譯(交叉編譯)

go語言支援直接編譯不同系統的可執行程式,例如可以直接在mac上可以直接編譯linux的執行程式

支援的環境變數

GOOS:目標可執行程式執行作業系統,支援 darwin,freebsd,linux,windows
GOARCH:目標可執行程式作業系統構架,包括 386,amd64,arm

CGO_ENABLED: 交叉編譯不支援 CGO,需要設定為0

檢視arch的幾種方式:

1.arch

2.file /bin/cat

3.uname -a

build示例

cd $GOPATH/src/app
CGO_ENABLED=0 env GOOS=darwin GOARCH=amd64 go build -o ./bin

 檢視支援的所有變數