Go build 不同系統下的可執行檔案

2022-09-15 00:09:21 字數 1006 閱讀 4973

go 支援在乙個平台下生成另乙個平台可執行程式的交叉編譯功能。

1、mac下編譯linux, windows平台的64位可執行程式:

$ cgo_enabled=0 goos=linux goarch=amd64 go build test.go

$ cgo_enabled=0 goos=windows goarch=amd64 gobuild test.go

2、linux下編譯mac, windows平台的64位可執行程式:

$ cgo_enabled=0 goos=darwin goarch=amd64 go build test.go

$ cgo_enabled=0 goos=windows goarch=amd64 go build test.go

3、windows下編譯mac, linux平台的64位可執行程式:

$ set cgo_enabled=0set goos=darwin3 set goarch=amd64 go build test.go

$ set cgo_enabled=0 set goos=linux set goarch=amd64 go build test.go

注:如果編譯web等工程專案,直接cd到工程目錄下直接執行以上命令

goos:目標可執行程式執行作業系統,支援 darwin,freebsd,linux,windows

goarch:目標可執行程式作業系統構架,包括 386,amd64,arm

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

cgo_enabled=0 goos=linux goarch=amd64 ./make.bash

cgo_enabled=0 goos=windows goarch=amd64 ./make.bash

go build 不同系統下的可執行檔案

1 mac下編譯linux,windows平台的64位可執行程式 12 cgo enabled 0 goos linux goarch amd64 go buildtest.go cgo enabled 0 goos windows goarch amd64 go buildtest.go 2 li...

sqlite不同系統下的安裝

sqlite 的乙個重要的特性是零配置的,這意味著不需要複雜的安裝或管理。本章將講解 windows linux 和 mac os x 上的安裝設定。建立資料夾 c sqlite,並在此資料夾下解壓上面兩個壓縮檔案,將得到 sqlite3.def sqlite3.dll 和 sqlite3.exe ...

gradle在不同系統下適配

有時我們需要自己定製一些gradle的執行task,可能會用到一些系統中的其它環境,這時需要我們針對不同的os做一些適配。方法一 獲取os的name判斷其中是否包含windows欄位 def iswindows 方法二 通過operatingsystem類中的方法來判斷當前環境 def iswind...