Golang 在 Mac、Linux、Windows 下交叉編譯


Golang 支持在一個平台下生成另一個平台可執行程序的交叉編譯功能。

Mac下編譯Linux, Windows平台的64位可執行程序:

1 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build gofile.go
2 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build gofile.go

Linux下編譯Mac, Windows平台的64位可執行程序:

1 CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build gofile.go
2 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build gofile.go

Windows下編譯Mac, Linux平台的64位可執行程序:

1 SET CGO_ENABLED=0
2 SET GOOS=darwin
3 SET GOARCH=amd64
4 go build gofile.go
5 
6 SET CGO_ENABLED=0
7 SET GOOS=linux
8 SET GOARCH=amd64
9 go build gofile.go

 

GOOS:目標可執行程序運行操作系統,支持 darwin,freebsd,linux,windows
GOARCH:目標可執行程序操作系統構架,包括 386,amd64,arm

Golang version 1.5以前版本在首次交叉編譯時還需要配置交叉編譯環境:

1 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash
2 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash

 

make.bash文件只在Golang源碼編譯安裝情況下才用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM