01.Go語言環(huán)境搭建

[toc]

Go語言的前世今生

一宰僧、Golang語言的官網(wǎng)

首先我們登錄Golang的官方網(wǎng)站:https://golang.org/

image

因?yàn)镚oogle和中國的關(guān)系拒秘,直接登錄Golang的官網(wǎng)阔墩,需要翻墻悼泌。

當(dāng)然你也可以登錄Golang的國內(nèi)網(wǎng)站:https://golang.google.cn/

image

二、下載

在Mac涩赢、Windows和Linux三個平臺上都支持Golang戈次。您可以從https://golang.org/dl/下載相應(yīng)平臺的安裝包。

image

該網(wǎng)站在國內(nèi)不容易訪問筒扒,所以可以訪問中國對應(yīng)的https://golang.google.cn/dl/或者是Go語言中文網(wǎng)

https://www.studygolang.com/dl 進(jìn)行安裝軟件的下載朝扼。
image

image

目前最新的版本,是今年2月份發(fā)布的Go1.12霎肯。
[圖片上傳中...(image-757f7f-1599121663451)]

Mac OS
https://golang.org/dl/下載osx安裝程序擎颖。雙擊啟動安裝。按照提示观游,這應(yīng)該在/usr/local/go中安裝了Golang搂捧,并且還會將文件夾/usr/local/go/bin添加到您的PATH環(huán)境變量中。

Windows
https://golang.org/dl/下載MSI安裝程序懂缕。雙擊啟動安裝并遵循提示允跑。這將在位置c中安裝Golang:\Go,并且還將添加目錄c:\Go\bin到您的path環(huán)境變量搪柑。

Linux
https://golang.org/dl/下載tar文件聋丝,并將其解壓到/usr/local。將/usr/local/go/bin添加到PATH環(huán)境變量中工碾。這應(yīng)該安裝在linux中弱睦。

開發(fā)工具包又分為安裝版和壓縮版。安裝版是Mac和Windows特有的渊额,他們的名字類似于:

- go1.12.1.darwin-amd64.pkg
- go1.12.1.windows-386.msi
- go1.12.1.windows-amd64.msi

安裝版况木,顧名思義,雙擊打開會出現(xiàn)安裝向?qū)а#屇氵x擇安裝的路徑火惊,幫你設(shè)置好環(huán)境比安康等信息,比較省事方便一些奔垦。

壓縮版的就是一個壓縮文件屹耐,可以解壓得到里面的內(nèi)容,他們的名字類似于:

- go1.12.1.darwin-amd64.tar.gz
- go1.12.1.linux-386.tar.gz
- go1.12.1.linux-amd64.tar.gz
- go1.12.1.windows-386.zip
- go1.12.1.windows-amd64.zip

壓縮版我們下載后需要解壓椿猎,然后自己移動到要存放的路徑下惶岭,并且配置環(huán)境變量等信息,相比安裝版來說鸵贬,比較復(fù)雜一些俗他,手動配置的比較多。

三阔逼、安裝和配置環(huán)境變量

3.1 Linux系統(tǒng)安裝和配置

Linux系統(tǒng)兆衅,我們以Ubuntu為例。

第一步:下載安裝

到go的官網(wǎng)上下載go的安裝包嗜浮,自動下載到了下載目錄羡亩。

打開終端,進(jìn)入到下載目錄危融,查看安裝包:

ruby@hanru:~$ cd 下載
ruby@hanru:~/下載$ ls
image.png

然后我們需要將壓縮包解壓畏铆,并拷貝到指定的目錄下,所以在終端繼續(xù)執(zhí)行以下命令:

ruby@ubuntu:~/下載$ sudo tar -xzf go1.12.1.linux-amd64.tar.gz -C /usr/local
image.png

輸入sudo吉殃,表示使用管理員身份執(zhí)行命令辞居,需要輸入密碼

此時楷怒,就將從go官網(wǎng)https://golang.org/dl/上下載tar文件,解壓到/usr/local目錄下瓦灶,該目錄下會有一個go文件夾鸠删。

可以進(jìn)入這個文件夾直接查看:

image.png

也可以通過終端命令進(jìn)行查看,輸入以下命令:

ruby@hanru:~/下載$ cd /usr/local
ruby@hanru:/usr/local$ ls
image.png

第二步:配置環(huán)境變量

一:需要先安裝vim贼陶。

直接在終端執(zhí)行以下命令:

ruby@ubuntu:~$ sudo apt-get install vim

二:編輯$HOME/.profile文件

A:先配置GOROOT刃泡,就是go的安裝目錄

export GOROOT="/usr/local/go"

B:然后配置GOPATH

Gopath就是Go項(xiàng)目代碼存放的位置。這個是我們自己定義的目錄碉怔。就好比是其他IDE的Workspace烘贴。

? 對于Ubuntu系統(tǒng),默認(rèn)使用Home/go目錄作為gopath撮胧。

? 該目錄下有3個子目錄:src桨踪,pkg,bin

GO代碼必須在工作空間內(nèi)趴樱。工作空間是一個目錄馒闷,其中包含三個子目錄:

? src ---- 里面每一個子目錄,就是一個包叁征。包內(nèi)是Go的源碼文件

? pkg ---- 編譯后生成的纳账,包的目標(biāo)文件

? bin ---- 生成的可執(zhí)行文件。

export GOPATH=$HOME/go

C:GOBIN

export GOBIN=$GOROOT/bin

D:添加到PATH中

我們需要將GOBIN添加到環(huán)境變量PATH中捺疼∈璩妫可以通過vi直接將下面內(nèi)容添加到$HOME/.profile中

export PATH=$PATH:$GOBIN

當(dāng)然,你也可以將GO的bin目錄直接配置到PATH中:

export PATH=$GOROOT/bin:$PATH

相當(dāng)于將上面的C和D步驟啤呼,寫在一起

具體操作:

  1. 首先使用ls -a命令卧秘,查看home目錄下是否有.profile文件。(以.開頭的文件都是隱藏文件官扣,使用-a命令查看)
  2. 直接在終端中輸入:vi $HOME/.profile
  3. 輸入i翅敌,切片到編輯模式,將以上內(nèi)容復(fù)制到文件中惕蹄,并保存退出蚯涮。

? 點(diǎn)擊esc鍵后,

? :q!卖陵,強(qiáng)制退出不保存

? :wq遭顶,保存并退出

三:讓配置文件立刻生效

使用source命令讓配置文件生效

ruby@ubuntu:~$ source $HOME/.profile

四:測試安裝

版本檢測

ruby@ubuntu:~$ go version

檢查go的配置信息

ruby@ubuntu:~$ go env

額外擴(kuò)展:

vi命令后文件的保存

Linux中vi的英文全稱為Visual Interface。

末行模式下執(zhí)行以下操作泪蔫。[命令模式下按下:就切換到末行模式下]
w
保存文件不退出vi

w file
文件另存到file中棒旗,不退出vi

w!
強(qiáng)制保存,不退出vi

wq
保持文件并退出

wq!
強(qiáng)制保存文件并退出

q
不保存文件退出vi

q!
不保存文件強(qiáng)制退出vi

e!
放棄所有修改撩荣,從上次保持的文件處在編輯

3.2 mac系統(tǒng)安裝并配置

Mac分為壓縮版和安裝版铣揉,他們都是64位的饶深。壓縮版和Linux的大同小異,因?yàn)镸ac和Linux都是基于Unix逛拱,終端這一塊基本上是相同的粥喜。

A:安裝

找到下載后的pkg安裝包:一般情況下,下載后的文件都在下載目錄下橘券。

image.png

雙擊pkg包,順著指引卿吐,即可安裝成功旁舰。

在命令行輸入 go version,獲取到go的版本號嗡官,則代表安裝成功箭窜。

配置環(huán)境變量

1、打開終端輸入cd ~進(jìn)入用戶主目錄;
2衍腥、輸入ls -all命令查看是否存在.bash_profile;
3磺樱、存在既使用vim .bash_profile 打開文件;
4、輸入 i 進(jìn)入vim編輯模式婆咸;
5竹捉、輸入下面代碼:

export GOROOT=/usr/local/go
export GOPATH=/Users/ruby/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN

其中 GOPATH: 日常開發(fā)的根目錄。GOBIN:是GOPATH下的bin目錄尚骄。

6块差、點(diǎn)擊ESC,并輸入 :wq 保存并退出編輯倔丈『┤颍可輸入vim .bash_profile 查看是否保存成功。

7需五、輸入source ~/.bash_profile 完成對golang環(huán)境變量的配置鹉动,配置成功沒有提示。
8宏邮、輸入go env 查看配置結(jié)果泽示。

3.3 Windows

A、安裝

安裝步驟就不在多說什么了蜀铲,一路下一步到底

B边琉、配置環(huán)境變量

注意:如果是msi安裝文件,Go語言的環(huán)境變量會自動設(shè)置好记劝。

我的電腦——右鍵“屬性”——“高級系統(tǒng)設(shè)置”——“環(huán)境變量”——“系統(tǒng)變量”

? 假設(shè)GO安裝于C盤根目錄

新建:

  • GOROOT:Go安裝路徑(例:C:\Go)

  • GOPATH:Go工程的路徑(例:E:\go)变姨。如果有多個,就以分號分隔添加

image.png

修改:

  • Path:在path中增加:C:\Go\bin;%GOPATH%\bin;

    需要把GOPATH中的可執(zhí)行目錄也配置到環(huán)境變量中, 否則你自行下載的第三方go工具就無法使用了

image.png
  1. 工作目錄就是我們用來存放開發(fā)的源代碼的地方厌丑,對應(yīng)的也是Go里的GOPATH這個環(huán)境變量定欧。這個環(huán)境變量指定之后渔呵,我們編譯源代碼等生成的文件都會放到這個目錄下,GOPATH環(huán)境變量的配置參考上面的安裝Go砍鸠,配置到Windows下的系統(tǒng)變量里扩氢。
  2. GOPATH之下主要包含三個目錄: bin、pkg爷辱、src录豺。bin目錄主要存放可執(zhí)行文件; pkg目錄存放編譯好的庫文件, 主要是*.a文件; src目錄下主要存放go的源文件

C、查看是否安裝配置成功

使用快捷鍵win+R鍵饭弓,輸入cmd双饥,打開命令行提示符,在命令行中輸入

go env  # 查看得到go的配置信息
go version  # 查看go的版本號
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弟断,一起剝皮案震驚了整個濱河市咏花,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌阀趴,老刑警劉巖昏翰,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異刘急,居然都是意外死亡棚菊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進(jìn)店門排霉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來窍株,“玉大人,你說我怎么就攤上這事攻柠∏蚨” “怎么了?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵瑰钮,是天一觀的道長冒滩。 經(jīng)常有香客問我,道長浪谴,這世上最難降的妖魔是什么开睡? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮苟耻,結(jié)果婚禮上篇恒,老公的妹妹穿的比我還像新娘。我一直安慰自己凶杖,他們只是感情好胁艰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般腾么。 火紅的嫁衣襯著肌膚如雪奈梳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天解虱,我揣著相機(jī)與錄音攘须,去河邊找鬼。 笑死殴泰,一個胖子當(dāng)著我的面吹牛于宙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悍汛,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼限煞,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了员凝?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤奋献,失蹤者是張志新(化名)和其女友劉穎健霹,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瓶蚂,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡糖埋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了窃这。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瞳别。...
    茶點(diǎn)故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖杭攻,靈堂內(nèi)的尸體忽然破棺而出祟敛,到底是詐尸還是另有隱情,我是刑警寧澤兆解,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布馆铁,位于F島的核電站,受9級特大地震影響锅睛,放射性物質(zhì)發(fā)生泄漏埠巨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一现拒、第九天 我趴在偏房一處隱蔽的房頂上張望辣垒。 院中可真熱鬧,春花似錦印蔬、人聲如沸勋桶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哥遮。三九已至岂丘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間眠饮,已是汗流浹背奥帘。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留仪召,地道東北人寨蹋。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像扔茅,于是被迫代替她去往敵國和親已旧。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評論 2 355