1.下載SDK
到https://golang.org下載對(duì)應(yīng)的SDK(需要翻墻)
Mac版本如下:
1.1 安裝版:go1.8.darwin-arm64.pkg
下載完成之后泣侮,直接雙擊打開安裝即可
1.2 壓縮版:go1.8.darwin-arm64.tar
下載完成后需要解壓姻成,然后自己移動(dòng)到要存放的路徑下同廉,并且配置環(huán)境變量等信息。
2.安裝Go環(huán)境
選擇1.8版本的安裝版拌屏,雙擊安裝。安裝完成后,打開terminal ,輸入如下命令陷舅,查看安裝的版本:
go version
3.配置環(huán)境變量
打開terminal
3.1 cd ~
進(jìn)入用戶主目錄望薄,
3.2 ls -all
查看是否存在.bash_profile
3.3 vim .bash_profile
打開并編輯該文件
3.4 根據(jù)自己的實(shí)際情況配置路徑疟游,我配置到了外置硬盤中
export GOPATH=/Volumes/gnhxsk/mygo
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
- GOPATH:日常開發(fā)的根目錄,Go從1.1版本到1.7版本必須設(shè)置這個(gè)變量痕支,而且不能和Go的安裝目錄一樣颁虐,這個(gè)目錄用來(lái)存放Go源碼,Go的可運(yùn)行文件卧须,以及相應(yīng)的編譯之后的包文件另绩。所以儒陨,這個(gè)目錄下面有三個(gè)子目錄:src、bin笋籽、pkg
src 存放源代碼(比如:.go .c .h .s等)
pkg 編譯后生成的文件(比如:.a)
bin 編譯后生成的可執(zhí)行文件(為了方便蹦漠,可以把此目錄加入到$PATH變量中,如果有多個(gè)gopath,那么使用${GOPATH//://bin:}/bin
) - GOBIN:是GOPATH下的bin目錄
- PATH:環(huán)境變量车海。需要gobin目錄加入到path路徑下笛园,生成可執(zhí)行文件就可以直接運(yùn)行了。
3.5 退出vim侍芝,執(zhí)行下面的命令完成對(duì)golang環(huán)境變量的配置研铆。
source ~/.bash_profile
3.6 go env
查看配置后的效果
4.Hellow World
src目錄是開發(fā)程序的主要目錄,所有的源碼是放在這個(gè)目錄下面竭贩。
例如:$GOPATH/src/mymath表示mymath這個(gè)應(yīng)用包或者可執(zhí)行應(yīng)用蚜印,這個(gè)是根據(jù)package是main還是其他來(lái)決定,main的話是可執(zhí)行應(yīng)用留量,其他的話就是應(yīng)用包.
4.1 執(zhí)行如下代碼窄赋,在src文件夾下創(chuàng)建mymath文件夾
cd $GOPATH/src
mkdir mymath
4.2 新建文件sqrt.go
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 編譯應(yīng)用
4.3.1 進(jìn)入對(duì)應(yīng)的應(yīng)用包目錄。然后執(zhí)行go install
楼熄,安裝
4.3.2 在任意目錄下執(zhí)行go install mymath
忆绰,安裝
安裝完成之后,可以進(jìn)入如下目錄可岂,查看應(yīng)用包
cd $GOPATH/pkg/${GOOS}_${GOARCH}
ls
mymath.a
4.4 調(diào)用應(yīng)用包
4.4.1 新建應(yīng)用包
cd $GOPATH/src
mkdir mathapp
cd mathapp
vim mian.go
main.go源碼:
package main
import(
"mymath"
"fmt"
)
func main(){
fmt.Printf("Hello,world. Sqrt(2) = %v\n",mymath.Sqrt(2))
}
4.4.2 編譯程序
進(jìn)入該應(yīng)用目錄错敢,然后執(zhí)行go build
,那么在該目錄下面會(huì)生成一個(gè)mathapp的可執(zhí)行文件
./mathapp
輸出如下內(nèi)容
Hello,world. Sqrt(2) = 1.414213562373095
4.4.3 安裝該應(yīng)用
進(jìn)入該目錄執(zhí)行go install
缕粹,那么在$GOPATH/bin
下增加了一個(gè)可執(zhí)行文件mathapp稚茅,在terminal中輸入如下命令可以執(zhí)行
mathapp
也可以輸出如下內(nèi)容
Hello,world. Sqrt(2) = 1.414213562373095
5.安裝VS Code
5.1 到https://code.visualstudio.com下載Visual Studio Code,直接使用
5.2 安裝Go插件
5.2.1 點(diǎn)擊右邊的Extensions圖標(biāo)平斩,搜索Go插件亚享,選擇Go進(jìn)行安裝,安裝之后绘面,系統(tǒng)會(huì)提示重啟Visual Studio Code
5.2.2 可以打開自動(dòng)保存功能欺税。開啟方法:選擇菜單File,勾選
5.2.3 用戶設(shè)置
在頂部菜單選擇Code->首選項(xiàng)->設(shè)置
{
"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 安裝依賴包支持
- 自動(dòng)安裝:選擇一個(gè).go文件拖進(jìn)入VS Code,然后VS Code會(huì)提示你安裝依賴包揭璃,選擇install all即可
- 手動(dòng)安裝:打開terminal,執(zhí)行以下命令
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語(yǔ)言調(diào)試
執(zhí)行以下命令:
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.打開“鑰匙串訪問(wèn)”
2.打開菜單->鑰匙串訪問(wèn)->證書助理->創(chuàng)建證書
3.名稱:dIv 身份類型:自簽名證書 證書類型:代碼簽名 并選擇“讓我覆蓋這些默認(rèn)值”
4.單擊“繼續(xù)”晚凿,有限期(天數(shù)):365,可以自己修改瘦馍,3650
5.一直繼續(xù)歼秽,直到看到“指定用于該證書的位置”鑰匙串,選擇“系統(tǒng)”并單擊“創(chuàng)建”按鈕
6.重啟Finder情组,再打開“鑰匙串訪問(wèn)”哲银,選擇“系統(tǒng)”扛吞,就會(huì)看到創(chuàng)建好的“dlv-cert”證書
7.右鍵"dlv-cert"證書,選擇“顯示簡(jiǎn)介->信任->代碼簽名”修改為:始終信任
8.打開terminal,進(jìn)入到之前安裝好的$GOPATH/src
目錄下的dlv源碼文件目錄:github.com/derekparker/delve
9.輸入如下命令就可以重新編譯出一個(gè)帶代碼簽名的dlv執(zhí)行程序
GO15VENDOREXPERIMENT=1 CERT=dlv-cert make install
可能會(huì)遇到的問(wèn)題
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/dlv
and it works now.
重啟Visual Studio Code荆责,就可以完美使用了滥比。推薦插件:vscode-icons