golang 环境搭建
操作系统 ubuntu 12.04 64 位
1. 配置编译环境
Go工具链采用C语言编写,需要安装以下开发工具
$ sudo apt-get install bison gcc libc6-dev ed gawk make
2.安装Mercurial工具
Mercurial是一种轻量级分布式版本控制系统,采用Python编写。
首先安装Python
$ sudo apt-get install python2.7
$ sudo apt-get install python-all-dev
$ sudo apt-get install python-setuptools
安装Mercurial
$ sudo easy_install -U mercurial
安装完毕后测试以下
$ hg -v
3. 获取go源码
$ hg clone -u release https://go.googlecode.com/hg/ go
4. 编译源码
$ cd go/src
$ ./all.bash
5. 编译成功后配置环境变量
$ sudo gedit ~/.bashrc
添加如下内容:
#golang
export GOROOT=~/go
export GOARCH=amd64
export GOOS=linux
export GOBIN=$GOROOT/bin
export GOTOOL=$GOROOT/pkg/tool/linux_amd64
export PATH=$PATH:$GOBIN:$GOTOOL
其中pkg/tool/linux_amd64是6g 6l工具的位置。
6.测试
test.go文件 代码如下
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
编译、链接、执行
$ 6g test.go
$ ls
test.6 test.go
$ 6l test.6
$ ls
6.out test.6 test.go
$ ./6.out
hello, world
或者直接运行 go run test.go
PS :Go 编译器支持三种指令集,不同体系结构生成的代码质量有差别:
amd64 (a.k.a.x86-64) 6g 6l 6c 6a 最成熟的实现,编译器在寄存器级别优化,生成高质量的目标代码。
386 (a.k.a.x86 or x86-32) 8g 8l 8c 8a amd64的完整移植
arm (a.k.a.ARM) 5g 5l 5c 5a
参考:http://wiki.ubuntu.org.cn/Golang
http://code.google.com/p/golang-china/wiki/install