從零開始學習 Go ——安裝

daryl發表於2019-05-14

0x01 設定 Go 環境

要安裝並順利使用 Go,第一步就是要設定 Go 的環境。

需要設定的 Go 的環境變數,一共有三個。

  • GOROOT Go 語言的原始碼以及安裝目錄。

  • GOPATH Go 語言的開發目錄,目錄可以有多個,但是,當我們執行 go get 命令的時候,如未指定目錄,會預設儲存在第一個目錄下。

  • GOROOT_BOOTSTRAP 這個目錄在安裝 Go 1.5 版本及之後的版本時需要設定。由於在 1.4 版本後,Go 編譯器實現了自舉,即通過 1.4 版本來編譯安裝之後版本的編譯器。如果不設定該環境變數的話,會產生這樣一個錯誤 Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.

除此之外,還需要配置 PATH 環境變數到 Go 的二進位制程式目錄。

我們需要在 ~/.bash_profile 中新增下面的程式碼(我把所有的 Go 語言相關的東西都放在了 ~/.golang 下面了):

export GOROOT=$HOME/.golang/go
export GOPATH=$HOME/.golang/path
export PATH=$PATH:$HOME/.golang/go/bin
export GOROOT_BOOTSTRAP=$HOME/.golang/go1.4

0x02 安裝 Go

我們有兩種方式下載 Go,一個是直接下載原始碼,另一個是通過 GitHub 克隆專案,個人推薦選擇第二種,地址:GayHub

首先將專案克隆到本地。

$ git clone https://github.com/golang/go.git ~/.golang/go

然後再複製一份作為 1.4 版本的目錄。

$ cp -r go go1.4

進入 1.4 的資料夾後,將切換分支開始安裝。

$ git checkout -b release-branch.go1.4 origin/release-branch.go1.4
$ cd go1.4/src
$ ./make.bash

編譯安裝好之後,進入之前的 go 資料夾,真正開始編譯安裝 Go。

$ cd go/src
$ ./make.bash

最後,我們試試 go version 來檢視版本,可能會發現很奇怪的東西。

$ go version
go version devel +d64c49098c Sun May 28 10:23:38 2017 +0000 darwin/amd64

這是我們編譯了 HEAD 的版本,也就是最新提交的版本,這個版本並不穩定。我們可以將分之切換到穩定版本來進行安裝。截止到這篇文章,Go 的最新穩定版本時 1.8.3。所以我們要講分支切換到 release-branch.go1.8

0x03 完整命令

$ echo "export GOROOT=$HOME/.golang/go" >> ~/.bash_profile
$ echo "export GOPATH=$HOME/.golang/path" >> ~/.bash_profile
$ echo "export PATH=$PATH:$HOME/.golang/go/bin" >> ~/.bash_profile
$ echo "export GOROOT_BOOTSTRAP=$HOME/.golang/go1.4" >> ~/.bash_profile
$ source ~/.bash_profile
$ cd ~
$ mkdir .golang
$ git clone https://github.com/golang/go.git go
$ cp -r go go1.4
$ cd go1.4
$ git checkout -b release-branch.go1.4 origin/release-branch.go1.4
$ cd src
$ ./make.bash
$ cd ../../go
$ git checkout -b release-branch.go1.8 origin/release-branch.go1.8
$ cd src
$ ./make.bash
$ go version

相關文章