Go語言是Google新推出的結合了動態語言和靜態語言優勢的一個新興的語言。下面介紹一下如何在Mac系統下安裝和使用這個語言。
1.下載SDK
到 https://studygolang.com/dl 下載對應的SDK(需要翻墻)
Mac版本如下:
1.1 安裝版:go1.8.darwin-arm64.pkg
下載完成之后,直接雙擊打開安裝即可
1.2 壓縮版:go1.8.darwin-arm64.tar
下載完成后需要解壓,然后自己移動到要存放的路徑下,并且配置環境變量等信息。
2.安裝Go環境
選擇1.8版本的安裝版,雙擊安裝。安裝完成后,打開terminal ,輸入如下命令,查看安裝的版本:
1
|
go version |
3.配置環境變量
打開terminal
3.1 cd ~進入用戶主目錄,
3.2 ls -all查看是否存在.bash_profile
3.3 vim .bash_profile打開并編輯該文件
3.4 根據自己的實際情況配置路徑,我配置到了外置硬盤中
1
2
3
|
export GOPATH = / Volumes / gnhxsk / mygo export GOBIN = $GOPATH / bin export PATH = $PATH:$GOBIN |
GOPATH:日常開發的根目錄,Go從1.1版本到1.7版本必須設置這個變量,而且不能和Go的安裝目錄一樣,這個目錄用來存放Go源碼,Go的可運行文件,以及相應的編譯之后的包文件。所以,這個目錄下面有三個子目錄:src、bin、pkg
src 存放源代碼(比如:.go .c .h .s等)
pkg 編譯后生成的文件(比如:.a)
bin 編譯后生成的可執行文件(為了方便,可以把此目錄加入到$PATH變量中,
如果有多個gopath,那么使用${GOPATH//://bin:}/bin
)
GOBIN:是GOPATH下的bin目錄
PATH:環境變量。需要gobin目錄加入到path路徑下,生成可執行文件就可以直接運行了。
3.5 退出vim,執行下面的命令完成對golang環境變量的配置。
1
|
source ~ / .bash_profile |
3.6 go env查看配置后的效果
4.Hellow World
src目錄是開發程序的主要目錄,所有的源碼是放在這個目錄下面。
例如:$GOPATH/src/mymath表示mymath這個應用包或者可執行應用,這個是根據package是main還是其他來決定,main的話是可執行應用,其他的話就是應用包.
4.1 執行如下代碼,在src文件夾下創建mymath文件夾
1
2
|
cd $GOPATH / src mkdir mymath |
4.2 新建文件sqrt.go
1
2
3
4
5
6
7
8
|
package mymath func Sqrt(x float64) float64{ z : = 0.0 for i : = 0 ; i < 1000 ; i + + { z - = (z * z - x) / ( 2 * x) } return z } |
4.3 編譯應用
4.3.1 進入對應的應用包目錄。然后執行go install,安裝
4.3.2 在任意目錄下執行go install mymath,安裝
安裝完成之后,可以進入如下目錄,查看應用包
1
2
3
|
cd $GOPATH / pkg / ${GOOS}_${GOARCH} ls mymath.a |
4.4 調用應用包
4.4.1 新建應用包
1
2
3
4
|
cd $GOPATH / src mkdir mathapp cd mathapp vim mian.go |
main.go源碼:
1
2
3
4
5
6
7
8
|
package main import ( "mymath" "fmt" ) func main(){ fmt.Printf( "Hello,world. Sqrt(2) = %v\n" ,mymath.Sqrt( 2 )) } |
4.4.2 編譯程序
進入該應用目錄,然后執行go build,那么在該目錄下面會生成一個mathapp的可執行文件
1
|
. / mathapp |
輸出如下內容
1
|
Hello,world. Sqrt( 2 ) = 1.414213562373095 |
4.4.3 安裝該應用
進入該目錄執行go install,那么在$GOPATH/bin下增加了一個可執行文件mathapp,在terminal中輸入如下命令可以執行
1
|
mathapp |
也可以輸出如下內容
1
|
Hello,world. Sqrt( 2 ) = 1.414213562373095 |
5.安裝VS Code
5.1 到https://code.visualstudio.com下載Visual Studio Code,直接使用
5.2 安裝Go插件
5.2.1 點擊右邊的Extensions圖標,搜索Go插件,選擇Go進行安裝,安裝之后,系統會提示重啟Visual Studio Code
5.2.2 可以打開自動保存功能。開啟方法:選擇菜單File,勾選
5.2.3 用戶設置
在頂部菜單選擇Code->首選項->設置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
{ "files.autoSave" : "off" , "go.buildOnSave" : true, "go.lintOnSave" : true, "go.vetOnSave" : true, "go.buildFlags" : [], "go.lintFlags" : [], "go.vetFlags" : [], "go.coverOnSave" : false, "go.useCodeSnippetsOnFunctionSuggest" : false, "go.formatOnSave" : true, "go.formatTool" : "goreturns" , "go.goroot" : "/usr/local/go" , / / 你的Goroot "go.gopath" : "/Volumes/gnhxsk/mygo" , / / 你的Gopath } |
5.2.4 安裝依賴包支持
* 自動安裝:選擇一個.go文件拖進入VS Code,然后VS Code會提示你安裝依賴包,選擇install all即可
* 手動安裝:打開terminal,執行以下命令
1
2
3
4
5
6
7
8
9
10
11
|
go get - u - v github.com / nsf / gocode go get - u - v github.com / rogpeppe / godef go get - u - v github.com / zmb3 / gogetdoc go get - u - v github.com / golang / lint / golint go get - u - v github.com / lukehoban / go - outline go get - u - v sourcegraph.com / sqs / goreturns go get - u - v golang.org / x / tools / cmd / gorename go get - u - v github.com / tpng / gopkgs go get - u - v github.com / newhook / go - symbols go get - u - v golang.org / x / tools / cmd / guru go get - u - v github.com / cweill / gotests / ... |
5.2.5 Visual Studio Code支持Go語言調試
執行以下命令:
1
2
3
|
go get - v - u github.com / peterh / liner github.com / derekparker / delve / cmd / dlv brew install go - delve / delve / delve go get - v - u github.com / peterh / liner github.com / derekparker / delve / cmd / dlv |
修改“dlv-cert”證書
1.打開“鑰匙串訪問”
2.打開菜單->鑰匙串訪問->證書助理->創建證書
3.名稱:dIv 身份類型:自簽名證書 證書類型:代碼簽名 并選擇“讓我覆蓋這些默認值”
4.單擊“繼續”,有限期(天數):365,可以自己修改,3650
5.一直繼續,直到看到“指定用于該證書的位置”鑰匙串,選擇“系統”并單擊“創建”按鈕
6.重啟Finder,再打開“鑰匙串訪問”,選擇“系統”,就會看到創建好的“dlv-cert”證書
7.右鍵”dlv-cert”證書,選擇“顯示簡介->信任->代碼簽名”修改為:始終信任
8.打開terminal,進入到之前安裝好的$GOPATH/src目錄下的dlv源碼文件目錄:github.com/derekparker/delve
9.輸入如下命令就可以重新編譯出一個帶代碼簽名的dlv執行程序
1
|
GO15VENDOREXPERIMENT = 1 CERT = dlv - cert make install |
可能會遇到的問題
The execution file “./dlv -h” always return >> killed:9
stackoverflow解決方式:
I need to do this step below
brew install go-delve/delve/delve
and go to $GOPATH/src/github.com/derekparker
git clone https://github.com/derekparker/delve.git
CERT=dlv-cert make install
(remove old dlv > brew install delve > codesign dlv)not just run
go get github.com/derekparker/delve/cmd/dlvand it works now.
重啟Visual Studio Code,就可以完美使用了。推薦插件:vscode-icons
上面即是在Mac上Go環境和VS Code的正確安裝與配置方法,如果遇到安裝或配置問題,可以聯系我們