golang開發環境配置

下載安裝

https://golang.org/dl/ 下載最新的安裝包。html

  • windows直接執行exe,按指示進行安裝(默認安裝目錄是:C:\Go)
  • linxu解壓後複製到你喜歡目錄就行(通常放在:/usr/local/go)

配置環境變量

首先,應在全局環境變量裏增長:GOROOT,指定golang的安裝位置。並將安裝目錄下的bin添加到PATH中,其中將bin添加到PATH是爲了可以在其餘目錄直接使用go命令:linux

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

應該在用戶的配置中,添加GOPATH指定項目目錄(假設項目在/home/goProject)。項目目錄中應包含binsrcpkg三個目錄。git

並同時設置GOBIN,以及將GOAPATH下的bin也加入PATH中。GOBIN將指定你經過go install安裝的包的路徑(其默認是第一個GOPATHbin目錄),而將GOAPATH下的bin也加入PATH中,是爲了可以方便地使用安裝好的各類工具。github

export GOPATH=/home/goProject
export PATH=$PATH:$GOPATH/bin

但須要注意的是,GOROOTGOPATH不能是同一個目錄。golang

安裝第三方包

在線安裝

使用go get命令指定第三方包的全路徑便可安裝。但此命令依賴git,須要你先安裝git客戶端才能使用。windows

go get -u github.com/jinzhu/gorm

更詳細的操做能夠經過 go help get 命令看到。網絡

離線安裝

golang的包都經過git直接發佈源碼,因此咱們能夠直接下載源碼經過go install安裝。此舉能解決大部分因網絡緣由,沒法使用go get安裝的狀況。ide

gorm,其安裝命令爲:工具

go get -u github.com/jinzhu/gorm

咱們能夠直接在 https://github.com/jinzhu/gorm找到其項目。ui

而後下載它。固然能夠經過各類手段下載。

咱們須要在咱們設置的第一個GOPATH目錄中的src目錄下創建github.com/jinzhu/gorm目錄,目錄結構與安裝命令中的全路徑相同。把下載好的源碼,解壓到這個目錄裏便可。

若是,安裝的庫還提供命令行命令操做,那麼能夠直接進源碼目錄執行:

go install

便可完成編譯安裝等操做。

交叉編譯

編譯操做須要執行:

go build xxx.go

環境變量設置

交叉編譯則需先設置環境變量,主要設置下述三個

  1. CGO_ENABLED
  2. GOOS
  3. GOARCH

其中CGO_ENABLED表示啓用cgo,我嘗試的過程當中,交叉編譯不支持cgo,因此要將CGO_ENABLED設置爲0

GOOS表示目標操做系統,可取下述值:

  • windows
  • darwin
  • linux
  • freebsd

GOARCH表示目標平臺,可取下述值:

  • amd64
  • 386
  • arm

示例

在windows平臺進行編譯,目標系統爲linux,目標平臺是x64:

SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build main.go

在linxu平臺進行編譯,目標系統爲windows,目標平臺是x86:

export CGO_ENABLED=0
export GOOS=windows
export GOARCH=386
go build main.go

其餘平臺、系統,自行替換其中環境變量的值便可。

IDE配置

我使用的編輯工具是vscode,安裝go語言插件後,能夠實現自動代碼格式化,自動進行靜態代碼檢查。

在安裝go插件的過程當中,會有幾個包由於各類緣由安裝不上。此時咱們實用go get命令是不管如何也搞不定的。我麼能夠選擇直接經過源碼安裝。

實際上,golang的github庫中,已經放好了golang開發所需的包,在https://github.com/golang/tools。咱們使用git clone將此項目clone到$GOPATH/src/golang.org/x/tools/目錄下,而後咱們缺什麼包,就直接進入其目錄執行go install,就能直接安裝上。

示例

gocode包安裝的時候,須要gcexportdata,咱們就能夠tools/go/gcexportdata目錄下直接執行go install安裝它。


原文發佈於:https://www.moonlightwatch.me/ -> golang開發環境配置備忘

相關文章
相關標籤/搜索