天天看點

如何在CentOS 7上安裝Go 1.7

介紹

Go,通常被稱為golang,是由Google開發的一種開源程式設計語言。它采用極簡主義的開發方法,可以輕松建構簡單,可靠,高效的軟體。本教程将指導您下載下傳和安裝Go 1.7,以及在CentOS 7伺服器上編譯和執行基本的“Hello,World!”程式。

要完成本教程,您需要具備一台已經設定好可以使用

sudo

指令的非root賬号的CentOS伺服器,并且已開啟防火牆。沒有伺服器的同學可以在這裡購買,不過我個人更推薦您使用免費的騰訊雲開發者實驗室進行試驗,學會安裝後再購買伺服器。

準備

在學習本教程之前,請確定您擁有具有

sudo

權限的正常非root使用者。

第1步 - 下載下傳Go

我們将直接從Go網站手動下載下傳軟體包。確定複制與64位體系結構相容的最新版本的連結。

首先進入可寫目錄:

cd /tmp           

複制

使用

curl

指令和Go中的連結下載下傳tarball:

curl -LO https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz           

複制

雖然tarball來自真正的來源,但最佳做法是驗證從Internet下載下傳的項目的真實性和完整性。此驗證方法證明檔案在下載下傳過程中既未被篡改也未被破壞或損壞。帶有

-a 256

标志的指令

shasum

會産生一個唯一的256位哈希:

shasum -a 256 go1.7*.tar.gz           

複制

702ad90f705365227e902b42d91dd1a40e48ca7f67a2f4b2fd052aaa4295cd95  go1.7.linux-amd64.tar.gz           

複制

将輸出中的哈希值與Go 下載下傳頁面上的校驗和值進行比較。如果它們比對,則可以安全地斷定下載下傳是合法的。

使用Go下載下傳,并驗證檔案的完整性,讓我們繼續安裝。

第2步 - 安裝Go

Go的安裝包括将tarball解壓縮到

/usr/local

目錄中。使用帶有

-C

标志的指令

tar

可将内容儲存到指定目錄中。

-x

标志執行提取功能,

-v

生成詳細輸出,

-z

通過

gzip

壓縮實用程式過濾存檔,

-f

告訴它指定的檔案名以執行以下操作:

sudo tar -C /usr/local -xvzf go1.7.linux-amd64.tar.gz           

複制

注意:釋出者正式建議将Go放在

/usr/local

目錄中。在另一個位置安裝它不會影響其可用性,但需要在Go環境變量中定義自定義路徑

GOROOT

。下一步讨論使用環境變量。

接下來,你的使用者的主目錄下,有三個孩子目錄建立工作區去,

bin

src

,和

pkg

bin

目錄将包含從目錄

src

中的人類可讀源檔案編譯的可執行程式。即使我們不會在本教程中使用

pkg

目錄,我們仍然建議設定它,因為它在建立更複雜的程式時很有用。

pkg

目錄存儲包對象,這是程式之間共享的可重用代碼。

我們将調用我們的工作區目錄

projects

,但您可以将其命名為任何您想要的名稱。

mkdir

指令的

-p

标志将建立适當的目錄樹。

mkdir -p ~/projects/{bin,pkg,src}           

複制

此時,使用Go将需要在指令行中指定其安裝位置的完整路徑。為了與Go進行互動更加使用者友好,我們将設定一些路徑。

第3步 - 設定Go的路徑

要像任何其他指令一樣執行Go,我們需要将其安裝位置附加到

$PATH

變量。Go安裝在系統目錄中,這就是我們将全局設定環境變量的原因。

使用

vi

編輯器在

/etc/profile.d

目錄中建立腳本

path.sh

sudo vi /etc/profile.d/path.sh           

複制

将以下内容添加到檔案中,儲存并退出:

export PATH=$PATH:/usr/local/go/bin           

複制

警告:如果Go安裝在其他位置,則相應地調整路徑。

此外,在使用者檔案

.bash_profile

中定義

GOPATH

GOBIN

Go環境變量以指向最近建立的工作空間。該

GOPATH

變量告訴轉到您的源檔案的位置,而

GOBIN

變量訓示它在哪裡建立編譯的二進制檔案。

打開

.bash_profile

檔案:

vi ~/.bash_profile           

複制

将以下内容添加到檔案末尾,儲存并退出:

. . .
export GOBIN="$HOME/projects/bin"
export GOPATH="$HOME/projects/src"           

複制

警告:如步驟2中所述,如果

/usr/local

目錄中未安裝Go ,則也要定義

GOROOT

變量。

. . .
export GOROOT="/path/to/go"           

複制

要将更改應用于目前的BASH會話,請使用

source

指令重新加載更新的配置檔案:

source /etc/profile && source ~/.bash_profile           

複制

以Go為核心,讓我們通過編寫一個簡短的程式來确認我們的設定是有效的。

第4步 - 建立程式

編寫我們的第一個程式将確定我們的環境正常運作,并讓我們有機會熟悉Go程式設計語言。

要開始,請建立一個新檔案

.go

vi ~/projects/src/hello.go           

複制

下面的代碼使用主Go包,導入格式化的IO内容元件,并設定一個新函數來列印字元串

Hello, World!

。将以下内容添加到檔案中:

package main
​
import "fmt"
​
func main() {
    fmt.Printf("Hello, World!\n")
}           

複制

然後,儲存并退出該檔案。

接下來,使用

go install

指令編譯源檔案

hello.go

go install $GOPATH/hello.go           

複制

我們現在準備運作我們的計劃:

$GOBIN/hello           

複制

hello.go

程式應該生成一條

Hello, World!

消息,确認Go的成功安裝。

結論

簡單的“Hello,World!”程式确定您擁有Go開發環境。典型的應用程式将使用庫和遠端包。

想要了解更多關于安裝Go 1.7的相關教程,請前往騰訊雲+社群學習更多知識。

參考文獻:《How To Install Go 1.7 on CentOS 7》