1. 程式人生 > >搭建Windows下的Go開發環境

搭建Windows下的Go開發環境

最近突然對Go語言產生了興趣,主要是因為在使用python的時候遇到了一些不爽的問題,然後發現了Go。Go是Google出的一個動態語言,語法和C++接近效能也非常的好,而且還支援編譯成exe釋出,並且不依賴任何虛擬機器(其實是打包在exe裡面了),這種好語言怎麼能夠錯過?所以便一時興起,開始學習了起來。由於本人還處於異常小白的階段,所以文章中可能不免有些錯誤,歡迎大家各種指正。

安裝Go

前往Go語言的官方網站:http://golang.org/,下載對應平臺的安裝包。如果是x86的系統可以就下載i386的,如果是x64的系統,那麼就安裝amd64的就可以了。另外Go語言在Windows下的的安裝包有兩種:msi和zip的。zip的是免安裝的,解壓在配置一些環境變數之後就可以使用,msi的則是安裝包版本的,安裝的時候會設定好對應的環境變數。為了方便,我就下了x64上的msi安裝包:go1.1.2.windows-amd64.msi。下好安裝包後,安裝過程就很簡單了,下一步到底就好了。 雖然msi會自動配置一些環境變數,但是本人在安裝完之後還是遇到了部分環境變數丟失的情況,所以在安裝完Go之後,我們最後還是檢查一些所有的環境變數是否正常。主要的環境變數有以下幾個:

  • GOROOT:Go的安裝目錄
  • GOPATH:用於存放Go語言Package的目錄,這個目錄不能在Go的安裝目錄中
  • GOBIN:Go二進位制檔案存放目錄,寫成%GOROOT%\bin就好
  • GOOS:作業系統
  • GOARCH:指定系統環境,i386表示x86,amd64表示x64
  • PATH:需要將%GOBIN%加在PATH變數的最後,方便在命令列下執行Go
  • 我們還可以使用go env來檢視所有其他的環境變數的定義
    go-env

當環境變數都配置正常之後,Go就已經安裝完畢了。現在開啟命令列,執行go,大家應該就可以看到如下的提示了。

Hello Go!

現在就讓我們一起來Hello World吧!

?
1 2 3 4 5 package main import "fmt" func main() { fmt.Println("Hello, World!") }

將上面的程式儲存成hello.go,然後在命令列中執行:

?
1 go run hello.go

Tada!結果就出來了!
go-run

而且Go語言還可以將go程式直接編譯成exe,再發布出去,相比python更為方便(需要使用py2exe),只需要在命令列中執行:

?
1 go build hello.go

就可以看到並執行編譯好的exe了。

go-build

另外,我們還可以看到,這個hello.exe居然有1.5M之多,這個應該是因為go把整個虛擬機器都打包到了exe裡面的緣故,從exe的依賴上來看,他對go已經完全沒有依賴了,只有幾個系統的dll了。
hello-dependency

IDE

關於IDE每個人的喜好都不同,你可以使用較為獨立的開發環境LiteIDE,也可以是VS或者Eclipse,甚至是notepad++,當然更不用說vim和emacs了。在這裡,介紹兩種比較常見的IDE:LiteIDE和Eclipse。

LiteIDE

LiteIDE算是整合的非常好Go IDE了,編譯,除錯,程式碼補全,功能可謂應有盡有。而且免費,開源,基於QT所以還跨平臺。其安裝異常簡單,從官網(https://code.google.com/p/liteide/)上下載對應平臺的安裝包,然後解壓到指定目錄即可。
liteide

Eclipse + GoClipse

Eclipse是非常著名的IDE了,所以具體要怎麼安裝,我就不太多說了,簡單介紹一下過程。

剛下載下來的Eclipse是不支援Go的,為了讓其支援Go語言,我們需要安裝一個外掛:GoClipse。
專案地址:https://code.google.com/p/goclipse/

安裝完之後,重啟Eclipse,我們便可以使用Eclipse來編寫Go語言的程式了。

GoCode

使用GoClipse寫程式碼的時候,我們會發現其沒有程式碼補全,為了增加程式碼補全,我們需要安裝gocode。LiteIDE就不需要了,因為其已經內建了gocode。

GoCode是host在github上,使用go寫的用來做go語言程式碼補全的工程,專案地址是:https://github.com/nsf/gocode,裡面有非常詳細的安裝方法。由於go內建了和包管理器類似的工具,所以安裝方式也就很簡單了。

  1. 安裝git:由於安裝過程中由於需要用到git,所以需要先安裝msysgit或者cygwin,如果你覺得這樣很麻煩,有一個更為簡單的方法:安裝github for windows:http://windows.github.com/
  2. 啟動git shell,並執行:go get -u -ldflags -H=windowsgui github.com/nsf/gocode。
  3. 現在到%GOBIN%目錄下看一下,就會發現有gocode.exe了。

接下來就需要配置一下Eclipse。開啟Windows->Preferences,找到Go->Gocode標籤,設定好gocode.exe的路徑即可。
goclipse-set-gocode

完成,現在好好寫程式碼吧。
eclipse-goclipse