在Linux上進行Go開發
1.Go安裝使用
1.1 下載Go源碼包
$ curl -o './go1.6.3.linux-amd64.tar.gz' 'https://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz'
1.2 解壓縮檔案夾到/usr/local目錄下
先su root,切換到管理員權限才有資格向/usr/local目錄下寫入檔案
$ tar zxvf go1.6.3.linux-amd64.tar.gz -C /usr/local/
1.3 設定PATH環境變數,添加/usr/local/go/bin到環境變數
取出當前環境變數$PATH,並使用:附加上新增環境變數/usr/local/go/bin,賦值給PATH,最後使用export修改環境變數
$ export PATH=$PATH:/usr/local/go/bin
列印當前環境變數,發現已經新增了/usr/local/go/bin
$ echo $PATH
1.4 設定工作區(workspace)
設定工作區到家目錄
$ mkdir $HOME/go$ export GOPATH=$HOME/go
1.5 程式碼群組織結構
Go tool 被設計成用來開源公用倉庫中的代碼,儘管或許你不需要發布你的代碼, 但是環境的設定還是一樣的。
Go的原始碼必須存放在 workspace中。 workspace 是一個目錄(directory hierachy),在這個目錄下有三個子目錄 src 包含 Go 原始碼檔案, 原始碼檔案組織成 packages (one package per directory) pkg 包含 package objects (二進位的包) bin 包含 可執行檔命令 command(可執行檔二進位檔案)
go tool 編譯(build) 原始碼檔案(source packages),並且將 resulting binaries 安裝在 pkg 和 bin 目錄下面。
src 目錄下麵包含多個版本控制的倉庫, (比如 Git 或者 Mercurial) 用來 跟蹤一個或者多個 source package的開發進度。 1.6 測試demo
為了編譯和運行一個簡單地程式,首先選擇一個 package path(這裡使用 github.com/usr),建立一個 package directory (包目錄)
$ mkdir $GOPATH/src/github.com/usr/hello -p
在包目錄下建立一個檔案 名為 hello.go,包含如下的代碼
package mainimport "fmt"func main() { fmt.Println("Hello, World.\n")}
使用 go tool 來 build and install 這個程式
$ go install github.com/user/hello
注意: 你可以你的電腦的任何檔案夾下面運行這個命令。 go tool 會在 $GOPATH 指定工作空間下面搜尋 github.com/usr/hello 這個包,並且編譯安裝這個包。
當然, 如果你在 package directory 下面運行 go install 你就可以忽略 package path。
$ cd $GOPATH/github.com/usr/hello$ go install
這個命令會 build the hello command, 產生一個可執行檔二進位檔案。然後將這個可執行檔二進位檔案安裝到工作目錄的 bin目錄下面,檔案名稱為 hello (在Windows下面為 hello.ext,可以看到可執行二進位檔案名稱和目錄的名稱保持一致)。
當有錯誤發生的時候,go tool只會 print output,而不會產生二進位檔案。 如果這些命令沒有產生 output(輸出),就表示他們運行成功了。
現在你可以 通過輸入 hello命令的全名 來運行這個命令了
$ $GOPATH/bin/hellohello, world
或者如果你已經將 $GOPATH/bin 加入到 PATH中:
$ hellohello, world
參考以下內容:
go 工作空間