Ubantu下Golang环境安装

1. 设置 Go 环境

要安装并顺利使用 Go,第一步就是要设置 Go 的环境。

需要设置的 Go 的环境变量,一共有三个。

  • GOROOT Go 语言的源码以及安装目录。

  • GOPATH Go 语言的开发目录,目录可以有多个,但是,当我们执行 go get 命令的时候,如未指定目录,会默认保存在第一个目录下。

  • GOROOT_BOOTSTRAP 这个目录在安装 Go 1.5 版本及之后的版本时需要设置。由于在 1.4 版本后,Go 编译器实现了自举,即通过 1.4 版本来编译安装之后版本的编译器。如果不设置该环境变量的话,会产生这样一个错误 Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4

除此之外,还需要配置 PATH 环境变量到 Go 的二进制程序目录。

我们需要在~/etc/profile 中添加下面的代码:

export GOPATH=$Home/GoProject
export GOROOT=/usr/local/go
export GPARCH="386"
export GOOS="linux"                      
export GOBIN=$GOROOT/bin/
export GOTOOLS=$GOROOT/pkg/tool
export PATH=$PATH:$GOBIN:$GOTOOLS
export GOROOT_BOOTSTRAP=/home/username/.golang/go1.4

重新加载 profile 文件,加载环境变量到内存

source /etc/profile

2 安装 Go

方法1:

我们有两种方式下载 Go,一个是直接下载源码,另一个是通过 GitHub 克隆项目,个人推荐选择第二种,地址:GayHub。

首先将项目克隆到本地。

$ git clone https://github.com/golang/go.git ~/.golang/go

然后再复制一份作为 1.4 版本的目录。

$ cp -r go go1.4

进入 1.4 的文件夹后,将切换分支开始安装。

$ git checkout -b release-branch.go1.4 origin/release-branch.go1.4
$ cd go1.4/src
$ ./make.bash

编译安装好之后,进入之前的 go 文件夹,真正开始编译安装 Go。

$ cd go/src
$ ./make.bash

最后,我们试试 go version 来查看版本,可能会发现很奇怪的东西。

$ go version
go version devel +d64c49098c Sun May 28 10:23:38 2017 +0000 darwin/amd64

这是我们编译了 HEAD 的版本,也就是最新提交的版本,这个版本并不稳定。我们可以将分之切换到稳定版本来进行安装。截止到这篇文章,Go 的最新稳定版本时 1.8.3。所以我们要讲分支切换到 release-branch.go1.8

方法2:(亲测) 注意root权限问题(没有权限在执行命令之前加sudo)

首先去官网下载go的安装包,这里用的是:go1.13.3.linux-amd64.tar.gz

1)  选择安装路径

由于默认的go路径,在/usr/local下, 所以用如下命令,解压创建/usr/local/go
tar -C /usr/local -xzf go1.13.3.linux-amd64.tar.gz

2)环境变量的设置

vim ~/etc/profile

将下列语句添加进去

export GOPATH=$Home/GoProject
export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin/              #可选
export GOTOOLS=$GOROOT/pkg/tool        #可选
export PATH=$PATH:$GOBIN:$GOTOOLS      #可选 如果不添加GOBIN 需要PATH=$PATH:$GOROOT/bin
export GOROOT_BOOTSTRAP=/home/luzhang/.golang/go1.4

如果是只读文件,使用su root 改成超级权限,在进行编辑保存。

3)安装go

cd 进入 go/src 目录,执行 ./all.bash 命令来安装go

这时候就会提示

Building Go cmd/dist using /home/用户名/go1.4.
ERROR: Cannot find /home/用户名/go1.4/bin/go.
Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.

此时根据方法1,首先将项目克隆到本地 ==>再复制一份作为 1.4 版本的目录==>进入 1.4 的文件夹后,将切换分支开始安装==>编译安装好之后,进入之前的 go 文件夹,真正开始编译安装 Go==>最后,用 go version 来查看版本

出现 go version go1.13.3 linux/amd64 就代表安装成功了。

3 完整命令

方法1完成命令

$ echo "export GOROOT=$HOME/.golang/go" >> ~/.bash_profile
$ echo "export GOPATH=$HOME/.golang/path" >> ~/.bash_profile
$ echo "export PATH=$PATH:$HOME/.golang/go/bin" >> ~/.bash_profile
$ echo "export GOROOT_BOOTSTRAP=$HOME/.golang/go1.4" >> ~/.bash_profile
$ source ~/.bash_profile
$ cd ~
$ mkdir .golang
$ git clone https://github.com/golang/go.git go
$ cp -r go go1.4
$ cd go1.4
$ git checkout -b release-branch.go1.4 origin/release-branch.go1.4
$ cd src
$ ./make.bash
$ cd ../../go
$ git checkout -b release-branch.go1.8 origin/release-branch.go1.8
$ cd src
$ ./make.bash
$ go version

方法2完整命令

$ cd /usr/local 
#将提前下载好的golang资源包放到usr/local下并用下面的命令解压
$ sudo tar -C /usr/local -xzf go1.13.3.linux-amd64.tar.gz
$ cd go/src
$ sudo ./all.bash #执行后将会报Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4的错
$ git clone https://github.com/golang/go.git ~/.golang/go #会clone到home/用户名/.goland/go
$ sudo cp -r go /home/用户名/go1.4
$ cd /home/用户名/go1.4/src
$ sudo ./make.bash  #也可以执行./all.bash即可等待编译完成 ALL TESTS PASSED字样表示编译安装OK
$ go version #出现正确版本号即表示正确安装

参考网址

https://studygolang.com/articles/2864

https://segmentfault.com/a/1190000009594143

https://blog.csdn.net/qq_15437667/article/details/59776840

https://blog.csdn.net/code_segment/article/details/78195630

https://blog.csdn.net/biggoodloong/article/details/81239981

https://www.cnblogs.com/tinywan/p/6928300.html

你可能感兴趣的:(GO)