2.2 Go 環境變數#
Go 開發環境依賴於一些作業系統環境變數,你最好在安裝 Go 之前就已經設定好它們。如果你使用的是 Windows 的話,你完全不用進行手動設定,Go 將被預設安裝在目錄 c:/go
下。這裡列舉幾個最為重要的環境變數:
- $GOROOT 表示 Go 在你的電腦上的安裝位置,它的值一般都是
$HOME/go
,當然,你也可以安裝在別的地方。 - $GOARCH 表示目標機器的處理器架構,它的值可以是 386、amd64 或 arm。
- $GOOS 表示目標機器的作業系統,它的值可以是 darwin、freebsd、linux 或 windows。
- $GOBIN 表示編譯器和鏈結器的安裝位置,預設是
$GOROOT/bin
,如果你使用的是 Go 1.0.3 及以後的版本,一般情況下你可以將它的值設定為空,Go 將會使用前面提到的預設值。
目標機器是指你打算運行你的 Go 應用程式的機器。
Go 編譯器支援交叉編譯,也就是說你可以在一台機器上構建能夠在不同作業系統和處理器架構上運行的應用程式,也就是說編寫原始碼的機器可以和目標機器有完全不同的特性(作業系統與處理器架構)。
為了區分本地機器和目標機器,你可以使用 $GOHOSTOS
和 $GOHOSTARCH
設定本地機器的作業系統名稱和編譯體系結構,這兩個變數只有在進行交叉編譯的時候才會用到,如果你不進行顯示設定,它們的值會和本地機器($GOOS
和 $GOARCH
)一樣。
- $GOPATH 預設採用和
$GOROOT
一樣的值,但從 Go 1.1 版本開始,你必須修改為其他路徑。它可以包含多個 Go 語言原始碼檔案、套件檔案和可執行檔案的路徑,而這些路徑下又必須分別包含三個規定的目錄:src
、pkg
和bin
,這三個目錄分別用於存放原始碼檔案、套件檔案和可執行檔案。 - $GOARM 專門針對基於 arm 架構的處理器,它的值可以是 5 或 6,預設為 6。
- $GOMAXPROCS 用於設定應用程式可使用的處理器個數與核數。