Go语言运行环境安装详细教程

 更新时间:2014年10月28日 10:48:23   投稿:junjie  
这篇文章主要介绍了Go语言运行环境安装详细教程,本文讲解了Linux、MAC OS、Windows下的安装方法,同时讲解了验证是否安装成功、第三方工具安装运行环境的方法,需要的朋友可以参考下

Go的三种安装方式

Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:

1.Go源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装是最方便而熟悉的。

2.Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。

3.第三方工具安装:目前有很多方便的第三方软件包工具,例如Ubuntu的apt-get、Mac的homebrew等。这种安装方式适合那些熟悉相应系统的用户。

最后,如果你想在同一个系统中安装多个版本的Go,你可以参考第三方工具GVM,这是目前在这方面做得最好的工具,除非你知道怎么处理。

Go源码安装

在Go的源代码中,有些部分是用Plan 9 C和AT&T汇编写的,因此假如你要想从源码安装,就必须安装C的编译工具。

在Mac系统中,只要你安装了Xcode,就已经包含了相应的编译工具。

在类Unix系统中,需要安装gcc等工具。例如Ubuntu系统可通过在终端中执行sudo apt-get install gcc libc6-dev来安装编译工具。

在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc,并设置相应的环境变量。

Go使用Mercurial进行版本管理,首先你必须安装了Mercurial,然后才能下载。假设你已经安装好Mercurial,执行如下代码:

假设已经位于Go的安装目录 $GO_INSTALL_DIR下:

复制代码 代码如下:

hg clone -u release https://code.google.com/p/go
cd go/src
./all.bash

运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。

上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。

然后设置几个环境变量

复制代码 代码如下:

export GOROOT=$HOME/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN

看到如下图片即说明你已经安装成功

图1.1 源码安装之后执行Go命令的图

如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。

Go标准包安装

Go提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go (Windows系统:c:\Go),当然你可以改变他们的安装位置,但是改变之后你必须在你的环境变量中设置如下信息:

复制代码 代码如下:

export GOROOT=$HOME/go 
export PATH=$PATH:$GOROOT/bin

如何判断自己的操作系统是32位还是64位?

我们接下来的Go安装需要判断操作系统的位数,所以这小节我们先确定自己的系统类型。

Windows系统用户请按Win+R运行cmd,输入systeminfo后回车,稍等片刻,会出现一些系统信息。在“系统类型”一行中,若显示“x64-based PC”,即为64位系统;若显示“X86-based PC”,则为32位系统。

Mac系统用户建议直接使用64位的,因为Go所支持的Mac OS X版本已经不支持纯32位处理器了。

Linux系统用户可通过在Terminal中执行命令arch(即uname -m)来查看系统信息:

64位系统显示

复制代码 代码如下:

x86_64

32位系统显示
复制代码 代码如下:

i386

Mac 安装

访问下载地址,32位系统下载go1.0.3.darwin-386.pkg,64位系统下载go1.0.3.darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的~/go/bin,这个时候打开终端,输入go

看到类似上面源码安装成功的图片说明已经安装成功

如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。

Linux 安装

访问下载地址,32位系统下载go1.0.3.linux-386.tar.gz,64位系统下载go1.0.3.linux-amd64.tar.gz,

假定你想要安装Go的目录为 $GO_INSTALL_DIR,后面替换为相应的目录路径。

解压缩tar.gz包到安装目录下:tar zxvf go1.0.3.linux-amd64.tar.gz -C $GO_INSTALL_DIR。

设置PATH,export PATH=$PATH:$GO_INSTALL_DIR/go/bin

然后执行go

图1.2 Linux系统下安装成功之后执行go显示的信息

如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。

Windows 安装

访问Google Code 下载页,32 位请选择名称中包含 windows-386 的 msi 安装包,64 位请选择名称中包含 windows-amd64 的。下载好后运行,不要修改默认安装目录 C:\Go\,若安装到其他位置会导致不能执行自己所编写的 Go 代码。安装完成后默认会在环境变量 Path 后添加 Go 安装目录下的 bin 目录 C:\Go\bin\,并添加环境变量 GOROOT,值为 Go 安装根目录 C:\Go\ 。

验证是否安装成功

在运行中输入 cmd 打开命令行工具,在提示符下输入 go,检查是否能看到 Usage 信息。输入 cd %GOROOT%,看是否能进入 Go 安装目录。若都成功,说明安装成功。

不能的话请检查上述环境变量 Path 和 GOROOT 的值。若不存在请卸载后重新安装,存在请重启计算机后重试以上步骤。

第三方工具安装

GVM

gvm是第三方开发的Go多版本管理工具,类似ruby里面的rvm工具。使用起来相当的方便,安装gvm使用如下命令:

复制代码 代码如下:

安装完成后我们就可以安装go了:
复制代码 代码如下:

gvm install go1.1
gvm use go1.1

也可以使用下面的命令,省去每次调用gvm use的麻烦: gvm use go1.1 --default

执行完上面的命令之后GOPATH、GOROOT等环境变量会自动设置好,这样就可以直接使用了。

apt-get

Ubuntu是目前使用最多的Linux桌面系统,使用apt-get命令来管理软件包,我们可以通过下面的命令来安装Go,为了以后方便,应该把 git mercurial 也安装上:

复制代码 代码如下:

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

homebrew

homebrew是Mac系统下面目前使用最多的管理软件的工具,目前已支持Go,可以通过命令直接安装Go,为了以后方便,应该把 git mercurial 也安装上:

复制代码 代码如下:

brew update && brew upgrade
brew install go
brew install git
brew install mercurial

相关文章

  • Go语言应用闭包之返回函数

    Go语言应用闭包之返回函数

    这篇文章主要介绍了Go语言应用闭包之返回函数,对于非常底层的纯 Go 语言代码或者包而言,在各个操作系统平台上的可移植性是非常强的,只需要将源码拷贝到相应平台上进行编译即可,或者可以使用交叉编译来构建目标平台的应用程序,需要的朋友可以参考下
    2023-07-07
  • Goland 关闭自动移除未使用的包操作

    Goland 关闭自动移除未使用的包操作

    这篇文章主要介绍了Goland 关闭自动移除未使用的包操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 深入理解GO语言的面向对象

    深入理解GO语言的面向对象

    相信很多人当初开发go语言的时候就是因为C++的特性太过于繁杂,从而使得很多C++的开发者因为C++的特性而头疼,go语言成功的精简了C++的特性,使其很简洁,很少的特性,却可以完成很多的事情。下面我们就来详细理解下GO语言的面向对象。
    2016-10-10
  • 浅析Golang中字符串拼接问题

    浅析Golang中字符串拼接问题

    Go的字符串是一个不可改变的数据结构,这和其他语言如JAVA,C++等的设定很类似.总体来说,有如下五种拼接方式,下面我们将论述各种方式的性能问题,以及如何选择
    2023-04-04
  • Golang使用Zookeeper实现分布式锁

    Golang使用Zookeeper实现分布式锁

    分布式锁是一种在分布式系统中用于控制并发访问的机制,ZooKeeper 和 Redis 都是常用的实现分布式锁的工具,本文就来使用Zookeeper实现分布式锁,希望对大家有所帮助
    2024-02-02
  • Golang底层原理解析String使用实例

    Golang底层原理解析String使用实例

    这篇文章主要为大家介绍了Golang底层原理解析String使用实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • golang使用mapstructure解析json

    golang使用mapstructure解析json

    mapstructure 是一个 Go 库,用于将通用映射值解码为结构,这篇文章主要来和大家介绍一下golang如何使用mapstructure解析json,需要的可以参考下
    2023-12-12
  • CentOS 32 bit安装golang 1.7的步骤详解

    CentOS 32 bit安装golang 1.7的步骤详解

    Go是Google开发的一种编译型,并发型,并具有垃圾回收功能的编程语言。在发布了6个rc版本之后,Go 1.7终于正式发布了。本文主要介绍了在CentOS 32 bit安装golang 1.7的步骤,文中给出了详细的步骤,相信对大家的学习和理解具有一定的参考借鉴价值,下面来一起看看吧。
    2016-12-12
  • GO语言(golang)基础知识

    GO语言(golang)基础知识

    这篇文章主要介绍了GO语言(golang)基础知识,需要的朋友可以参考下
    2015-01-01
  • 对Golang中的FORM相关字段理解

    对Golang中的FORM相关字段理解

    这篇文章主要介绍了对Golang中的FORM相关字段理解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05

最新评论