go交叉編譯
阿新 • • 發佈:2019-02-12
指定叉編譯目標:
GOARCH 目標平臺(編譯後的目標平臺)的處理器架構(386、amd64、arm)
GOOS 目標平臺(編譯後的目標平臺)的作業系統(darwin、freebsd、linux、windows)
(一)Windows 下編譯Linux 64位可執行程式:
SET CGO_ENABLED=0 //不設定也可以,原因不明
SET GOOS=linux
SET GOARCH=amd64
通過 go env 檢視設定是否成功。
(二)Linux 下編譯Windows可執行程式:
export CGO_ENABLED=0
export GOOS=windows
export GOARCH=amd64
通過 go env 檢視設定是否成功。
go build hello.go
問題:
上面的(一)的方法設定只能在當前視窗生效,於是乎搜尋出其他方法,不過沒成功。
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
make.bat
報錯:
解決:
設定環境變數 GOROOT_BOOTSTRAP為GO的安裝目錄 C:\Go
再次執行make.bat報錯:
github上有解釋說:不是原始碼編譯安裝的go,重新原始碼安裝go可以解決