Mac下安裝Go開發環境可以借鑒之前我的博客:
Mac下go語言環境的搭建
http://www.cnblogs.com/ghj1976/archive/2013/01/16/2863142.html
首先當前需要先設置GOROOT
GOROOT 是Go安裝包的根目錄。通常是放在$HOME/go,當然也可以是其他位置。比如我這里Mac下默認是安裝在/usr/local/go 下面了。
參考:https://code.google.com/p/golang-china/wiki/Install

GOPATH 的設置:
注:這個不是Go安裝目錄。

參考:https://github.com/astaxie/build-web-application-with-golang/blob/master/01.2.md
GOPATH允許多個目錄,當有多個目錄時,請注意分隔符,多個目錄的時候Windows是分號,Linux系統是冒號,當有多個GOPATH時,默認會將go get的內容放在第一個目錄下。
$GOPATH 目錄下約定有三個子目錄:
- src 存放源代碼(比如:.go .c .h .s等)
- pkg 編譯后生成的文件(比如:.a)
- bin 編譯后生成的可執行文件(為了方便,可以把此目錄加入到 $PATH 變量中)
假設如上圖設置, /User/cybercare/go 為我的 $GOPATH 目錄。
命令行執行如下代碼
cd $GOPATH/src
mkdir mymath
新建文件sqrt.go,內容如下
// $GOPATH/src/mymath/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
}
這樣我的應用包目錄和代碼已經新建完畢,注意:一般建議package的名稱和目錄名保持一致
編譯應用
上面我們已經建立了自己的應用包,如何進行編譯安裝呢?有兩種方式可以進行安裝
1、只要進入對應的應用包目錄,然后執行go install,就可以安裝了
2、在任意的目錄執行如下代碼go install mymath
安裝完之后,我們可以進入如下目錄
cd $GOPATH/pkg/${GOOS}_${GOARCH}
//可以看到如下文件
mymath.a
這個.a文件是應用包,那么我們如何進行調用呢?
接下來我們新建一個應用程序來調用
新建應用包mathapp
cd $GOPATH/src
mkdir mathapp
cd mathapp
vim main.go
// $GOPATH/src/mathapp/main.go源碼:
package main
import (
"mymath"
"fmt"
)
func main() {
fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2))
}
如何編譯程序呢?進入該應用目錄,然后執行go build,那么在該目錄下面會生成一個mathapp的可執行文件
./mathapp
輸出如下內容
Hello, world. Sqrt(2) = 1.414213562373095
如何安裝該應用,進入該目錄執行go install,那么在$GOPATH/bin/下增加了一個可執行文件mathapp,這樣可以在命令行輸入如下命令就可以執行
mathapp
也是輸出如下內容
Hello, world. Sqrt(2) = 1.414213562373095
