golang在ubuntu-12.04和centos-6.5上的安装

壬癸甲乙 · · 2052 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

golang官方编译器安装与配置

  • 安装gcc工具,因为golang有些功能是使用c写的,所以构建golang的编译是必须的
$ sudo apt-get install bison gawk gcc libc6-dev make
  • 安装mercurial工具,目的使用hg命令来提取golang的源代码
$ sudo apt-get install mercurial
  • 代取提取,如果您的网速比较慢的话,此步要多花点时间,我是在/home目录下运行下面命令的,也就是说把go源代码下载到了/home/go中
$ hg clone -r release https://go.googlecode.com/hg/ go
  • 编译golang
$ cd go/src
$ ./all.bash
  • 假如正常的话,会出现下面的信息
ALL TESTS PASSED

---
Installed Go for linux/amd64 in /home/go.
Installed commands in /home/go/bin.
*** You need to add /home/go/bin to your $PATH. ***
The compiler is 6g.
  • 配置系统环境

你在~/.bashrc或者 ~/.profile写入你的配置文件,下面我会以.bashrc来说明; 那么,golang要设置那些变量呢?

1、$GOROOT golang的目录,这里我的是/home/go

2、$GOOS 和 $GOARCH 系统的参数 设置方法如下:

$GOOS 	$GOARCH 	
	darwin 	386
	darwin 	amd64
	freebsd 	386
	freebsd 	amd64
	linux 	386
	linux 	amd64
	linux 	arm 	incomplete
	windows 	386 	incomplete

3、$GOBIN golang的bin目录,这里是/home/go/bin

下面是一个配置例子:请大家特别注意$GOOS 和 $GOARCH 的配置

$ gedit ~/.bashrc

然后加入

export GOROOT=~/go
export GOARCH=386(或amd64)
export GOOS=linux
export GOBIN=$GOROOT/bin/
export GOTOOLS=$GOROOT/pkg/tool/
export PATH=$PATH:$GOBIN:$GOTOOLS

上面这么多,其实也可以用软件源安装!命令如下

sudo add-apt-repository ppa:gophers/go
sudo apt-get update
sudo apt-get install golang

gccgo安装 gccgo似乎是从4.6开始支持的。也就是说,要在ubuntu用命令安装gccgo只有ubuntu 11.10包括且以上的版本。

大家可以试一下命令
gcc -v
,查看
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin

如果有一个go,说明你的gcc支持golang,那么就执行以下命令安装gcc-go(大家试一下这命令,我不敢确定):

sudo apt-get install gccgo

参考文档:http://wiki.ubuntu.org.cn/Golang#golang.E7.BC.96.E8.AF.91.E5.99.A8.E5.AE.89.E8.A3.85.E4.B8.8E.E9.85.8D.E7.BD.AE

  • 关于GOPATH的说明

GOPATH环境变量用于指定这样一些目录:除$GOROOT之外的包含Go项目源代码和二进制文件的目录。go install和go 工具会用到GOPATH:作为编译后二进制的存放目的地和import包时的搜索路径。

GOPATH是一个路径列表,也就是可以同时指定多个目录。多个目录在Mac和Linux下通过”:”分割;Windows下通过”;”分割。注意,大部分情况下会是第一个路径优先,比如:查找包

有些地方建议在设置了GOPATH之后,将$GOPATH/bin加入PATH中,这样可以方便的运行go install好的二进制程序。然而,当存在GOPATH中存在多个路径时,这种写法只会将最后一个路径跟上bin。在mac或linux下可以通过这种方式解决:
${GOPATH//://bin:}/bin

GOPATH 必须设置编译和安装包,即使用标准的Go目录树,类似如下:

GOPATH=/home/user/gocode

/home/user/gocode/
    src/
        foo/
            bar/               (go code in package bar)
                x.go
            quux/              (go code in package main)
                y.go
    bin/
        quux                   (installed command)
    pkg/
        linux_amd64/
            foo/
                bar.a          (installed package object)
例如创建 $HOME/mygo 目录和作为源代码的 src 目录。
$ mkdir -p $HOME/mygo/src # create a place to put source code

下一步就是设置 GOPATH,另外你应该把 这个目录下的bin目录放在 PATH 环境变量,这样你就可以直接在命令行执行而不用给出完整目录。

export GOPATH=$HOME/mygo
export PATH=$PATH:$HOME/mygo/bin

看到这儿你会觉得很麻烦,其实真的不用这么麻烦。ubuntu上直接apt-get install go就可以了。centos上下载安装包,解压缩后到src目录,./all.bash就可以了,然后设置你的GOROOT和GOPATH。


有疑问加站长微信联系(非本文作者)

本文来自:开源中国博客

感谢作者:壬癸甲乙

查看原文:golang在ubuntu-12.04和centos-6.5上的安装

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2052 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传