apt-get
apt-get install software-properties-common
apt-get install python-software-properties
add-apt-repository ppa:gophers/go
apt-get update
apt-get install golang-go git-core mercurial

2、设置GOPATH变量,指定工作空间

在当前目录下的.bashrc文件最后增加 export GOPATH=/opt/go

echo "export GOPATH=/opt/go" >> ~/.bashrc

重新加载.bashrc文件

source ~/.bashrc

3、工作空间的目录结构

/opt/go
-src 存放源代码(.go .c .h .s等)
-pkg  编译后生成的文件(.a)
-bin  编译后生成的可执行文件

4、开发应用包(包名以mymath为例)

  在工作空间的src目录下创建mymath目录,其下创建源码文件 sqrt.go,内容如下:

// $GOPATH/src/mymath/sqrt.go源码如下:
package mymath func Sqrt(x float64) float64 {
z := 0.0
for i := ; i < ; i++ {
z -= (z*z - x) / ( * x)
}
return z
}

  注意:一般建议package的名称和目录名保持一致

  上面我们已经建立了自己的应用包,如何进行编译安装呢?有两种方式可以进行安装

go install
go install mymath

  安装完之后,在$GOPATH/pkg/mymath/平台类型/目录下,有应用包mymath.a

5、开发可执行程序包(包名以mathapp为例)

  在工作空间的src目录下创建mathapp目录,其下创建源码文件 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))
}
mainmymath$GOPATH/src
go build,那么在该目录下面会生成一个mathapp的可执行文件。运行执行程序如下:
#./mathapp
Hello, world. Sqrt() = 1.414213562373095

6、发布和执行程序

go install
#mathapp
Hello, world. Sqrt() = 1.414213562373095