標籤:master ora $path div 交叉編譯 load 解壓 ref 參數
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 用於設定應用程式可使用的處理器個數與核心數,詳見第 14.1.3 節。
在接下來的章節中,我們將會討論如何在 Linux、Mac OS X 和 Windows 上安裝 Go 語言。在 FreeBSD 上的安裝和 Linux 非常類似。Team Dev正在嘗試將 Go 語言移植到其它例如 OpenBSD、DragonFlyBSD、NetBSD、Plan 9、Haiku 和 Solaris 作業系統上,你可以在這個頁面找到最近的動態:Go Porting Efforts。
摘自:https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/02.2.md
設定 Go 環境變數
我們在 Linux 系統下一般通過檔案 $HOME/.bashrc
配置自訂環境變數,根據不同的發行版也可能是檔案 $HOME/.profile
,然後使用 gedit 或 vi 來編輯檔案內容。
export GOROOT=$HOME/go
為了確保相關檔案在檔案系統的任何地方都能被調用,你還需要添加以下內容:
export PATH=$PATH:$GOROOT/bin
在開發 Go 項目時,你還需要一個環境變數來儲存你的工作目錄。
export GOPATH=$HOME/Applications/Go
$GOPATH
可以包含多個工作目錄,取決於你的個人情況。如果你設定了多個工作目錄,那麼當你在之後使用 go get
(遠程包安裝命令)時遠程包將會被安裝在第一個目錄下。
在完成這些設定後,你需要在終端輸入指令 source .bashrc
以使這些環境變數生效。然後重啟終端,輸入 go env
和 env
來檢查環境變數是否設定正確。
從 官方頁面 或 國內鏡像 下載 Go 的源碼包到你的電腦上,然後將解壓後的目錄 go
通過命令移動到 $GOROOT
所指向的位置。
wget https://storage.googleapis.com/golang/go<VERSION>.src.tar.gz tar -zxvf go<VERSION>.src.tar.gz sudo mv go $GOROOT
go語言筆記——go環境變數goroot是安裝了路徑和gopath是三方包路徑