Unbuntu下安装Go环境

开始在官网下了GO Linux下的安装包,安装之后,执行go,系统提示无法执行二进制文件,尚不明白什么原因造成的。
后来就跟着上面的博文进行安装:

第一步:安装Go语言相关工具
    sudo apt-get install bison ed gawk gcc libc6-dev make

第二步:安装Mercurial(可选,不想安装可直接跳到第三步)
Mercurial 是一个版本管理系统,俗称 hg,可以直接在终端输入 "hg" 来检查是否已经安装该软件,由于我们需要从 google code 中 clone Go 语言的源码包,而其使用的版本管理系统为 Mercurial,因此我们在获取之前需要安装该软件,在 Ubuntu 下安装非常方便,在终端依次输入以下指令: 
    sudo apt-get install python-setuptools 
    sudo apt-get install python-dev 
    sudo apt-get install build-essential    
    sudo apt-get install mercurial

第三步:获取Go语言源码包
方式一:cd 跳转到你想保存的Go语言源码路径,然后再终端输入:hg clone -r release https://go.googlecode.com/hg/ go

方式二:去go的官网下载,注意:一定要选择适合你自己的系统的源码包。解压到指定位置(根目录应该设置为go)
           

目录结构如上图所示。

第四步:配置Go语言环境变量
cd ~
vi .bashrc
加入如下代码:
# Golang environment variable
export GOROOT=/usr/softs/go
export GORACH=686
export GOOS=linux
export PATH=${PATH}:/usr/softs/go/bin
export GOPATH=/usr/local/gopath

说明:
GOROOT:Go源码包存放的位置
GORASH和GOOS:和系统相关,可用uname -a查看,我的是:
        Linux javagoboy-VirtualBox 3.8.0-19-generic #29-Ubuntu SMP Wed Apr 17 18:19:42 UTC 2013 i686 i686 i686 GNU/Linux
        上面的686表示64位系统,如果是386则表示是32位的。
PATH:${PATH}:+Go语言源码包下的bin目录,也就是${PATH}:${GOROOT}/bin
GOPATH:工作目录,可以随时修改,根据约定,该目录下面至少含有三个文件夹,分别为
    bin:用于存放编译后生成的文件
    pkg:用于存放编译后生成的包
    src:用于存放各类源码文件

编辑完成后,保存退出。
然后执行source .bashrc

第五步:编译GO源码
cd $GOROOT/src
./all.bash
等待。。。。。。
编译完成后:


接下来,在终端输入命令go,可以看到如下界面,说明Go语言环境安装完成。


第六步:测试Go语言安装环境是否安装成功

cd /GOPATH/src
vi helloworld.go
输入:
package main
import "fmt"
func main() {
    fmt.Println("Hello,World!")
}

保存退出
然后,执行go run helloworld.go
获得结果:


(参考:http://blog.csdn.net/liuhongwei123888/article/details/8512815)
第七步:配置Vim支持Go语法高亮
cp -r $GOROOT/misc/vim/* ~/.vim/
vi ~/.vimrc
加入代码:
filetype plugin indent on
syntax on

安装gocode:go get -u github.com/nsf/gocode,会默认安装到GOBIN目录(我的是在GOPATH的bin中)下,源码在src中。
不过需要提前安装git,如果未安装,请执行,apt-get install git

配置Gocode:
cd $GOPATH/src/github.com/nsf/gocode/vim
执行:./update.bash
执行:/$GOPATH/bin/gocode get propose-builtins true。

再次打开刚才编写的helloworld.go,可以看到:


说明配置成功。

猜你喜欢

转载自blog.csdn.net/whxaing2011/article/details/21319125