文档章节

go安装方法及安装脚本

waynehu
 waynehu
发布于 2013/05/06 15:35
字数 1014
阅读 485
收藏 2

##更新

go1.4正式版 已经发布,官方正式支持 Android 从google网站的go下载页找到对应的包,我这里是linux64位,所以我下载go1.4.linux版
本文参考自官方手册

##确定环境

go在运行时会读取环境变量,如未读到相关环境变量,则按默认值运行 例如${GOROOT}表示为安装位置,如未正确设置,会无法使用。

在家目录(~)下的.bashrc文件最后加入以下内容

$ vi .bashrc

#go安装的位置
export GOROOT=$HOME/go
#类似工作空间
export GOPATH=$HOME/mygo
#将bin目录加入环境变量
export PATH=${PATH}:${GOPATH}/bin:$GOROOT/bin
#声明32位还是64位
export GOARCH=amd64
#声明操作系统类型
export GOOS=linux


source一下,使上面新设置的环境生效
$ source .bashrc

##下载安装

我把每个golang版本都有保存在golang目录里,可以方便切换使用

现在我先安装一个1.1正式版
$ cd ~
$ mkdir golang
$ cd golang
$ wget https://storage.googleapis.com/golang/go1.4.linux-amd64.tar.gz
$ tar zxf go1.1rc1.linux-amd64.tar.gz
如果GOROOT是指向$HOME/golang/go的话,go已经安装好了,因为我要用多版本,所以多一步

我先按版本来改名
$ mv go go1.1
$ cd ~
做一个软连接,来搭配上一节的“GOROOT=$HOME/go”
$ ln -s golang/go1.4 go

go安装好了,测试一下
$ go version
如果显示“go version go1.4 linux/amd64”表示成功

我在继续做个1.3.3的吧

$ cd ~/golang
$ wget https://storage.googleapis.com/golang/go1.3.3.linux-amd64.tar.gz
$ tar zxf go1.3.3.linux-amd64.tar.gz
$ mv go go1.3.3
上面几行表示下载好并解压好了,现在开始切换

$ cd ~
把指向go1.1的软连接删掉
$ rm go
把新的连接指向1.0.3
$ ln -s golang/go1.0.3 go

go安装好了,测试一下
$ go version
如果显示“go version go1.3.3”表示安装并切换成功

然后。。。。就没有然后了,安装好了!我还以为多复杂呢,切~!

##总结

其实安装go1.1或其他版本,只要

  1. 告诉系统go将装在哪里(本文是$HOME/go
  2. 找到对应平台的文件,下载go的包
  3. 解压&装在那里

完成!绿色软件!

##脚本

以下脚本是用于64位的linux系统环境安装。

cd ~
mkdir golang
cd golang
wget https://storage.googleapis.com/golang/go1.7.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.7.1.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.6.2.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.6.1.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.6.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.5.4.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.5.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.5.2.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.5.1.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.5.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.4.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.4.1.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.4.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.3.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.3.2.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.3.1.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.3.linux-amd64.tar.gz
wget https://storage.googleapis.com/golang/go1.2.2.linux-amd64.tar.gz

tar zxvf go1.7.3.linux-amd64.tar.gz
mv go go1.7.3
tar zxvf go1.7.1.linux-amd64.tar.gz
mv go go1.7.1
tar zxvf go1.7.linux-amd64.tar.gz
mv go go1.7
tar zxvf go1.6.3.linux-amd64.tar.gz
mv go go1.6.3
tar zxvf go1.6.2.linux-amd64.tar.gz
mv go go1.6.2
tar zxvf go1.6.1.linux-amd64.tar.gz
mv go go1.6.1
tar zxvf go1.6.linux-amd64.tar.gz
mv go go1.6
tar zxvf go1.5.4.linux-amd64.tar.gz
mv go go1.5.4
tar zxvf go1.5.3.linux-amd64.tar.gz
mv go go1.5.3
tar zxvf go1.5.2.linux-amd64.tar.gz
mv go go1.5.2
tar zxvf go1.5.1.linux-amd64.tar.gz
mv go go1.5.1
tar zxvf go1.5.linux-amd64.tar.gz
mv go go1.5
tar zxvf go1.4.3.linux-amd64.tar.gz
mv go go1.4.3
tar zxvf go1.4.2.linux-amd64.tar.gz
mv go go1.4.2
tar zxvf go1.4.1.linux-amd64.tar.gz
mv go go1.4.1
tar zxvf go1.4.linux-amd64.tar.gz
mv go go1.4
tar zxvf go1.3.3.linux-amd64.tar.gz
mv go go1.3.3
tar zxvf go1.3.2.linux-amd64.tar.gz
mv go go1.3.2
tar zxvf go1.3.1.linux-amd64.tar.gz
mv go go1.3.1
tar zxvf go1.3.linux-amd64.tar.gz
mv go go1.3
tar zxvf go1.2.2.linux-amd64.tar.gz
mv go go1.2.2

cd ~
echo "" >> .bashrc
echo "#=======================go" >> .bashrc
echo "#go安装的位置" >> .bashrc
echo "export GOROOT=\$HOME/go" >> .bashrc
echo "#类似工作空间" >> .bashrc
echo "export GOPATH=\$HOME/mygo" >> .bashrc
echo "#将bin目录加入环境变量" >> .bashrc
echo "export PATH=\${PATH}:\${GOPATH}/bin:\$GOROOT/bin" >> .bashrc
echo "#声明32位还是64位" >> .bashrc
echo "export GOARCH=amd64" >> .bashrc
echo "#声明操作系统类型" >> .bashrc
echo "export GOOS=linux" >> .bashrc
source .bashrc
#确定要用的版本,这里是用1.7版本
ln -s golang/go1.7 go

如果要切换go的版本,例如切换到1.7.3版本

先要rm ~/go 然后ln -s golang/go1.7.3 go

完成

© 著作权归作者所有

共有 人打赏支持
waynehu
粉丝 34
博文 51
码字总数 25481
作品 0
静安
动态扩展Nginx支持Lua功能

一、Lua说明: Lua 是一个简洁、轻量、可扩展的脚本语言,也是号称性能最高的脚本语言,用在很多需要性能的地方,比如:游戏脚本,nginx,wireshark的脚本,当你把他的源码下下来编译后,你会...

在下郑小明
2017/05/07
0
0
Youtube 网站视频和字幕下载

由于工作的需要,我经常要去Youtube网站观看技术相关视频,当遇到好的视频想将视频和字幕下载下来,今天就主要介绍如果去Youtube官网下载相关视频及字幕的方法。 下面列出需要的工具: 安装完...

yelang007sheng
2017/03/18
0
0
喵拉布丁/KF_Online_Assistant

KF Online助手 KFOL必备!为绯月Galgame论坛增加了大量人性化、自动化的功能,更多功能开发中…… 脚本下载地址 注:初次安装请先阅读安装方法 以下3个版本仅在数据存储类型的支持程度方面有...

喵拉布丁
2015/09/19
0
0
谷歌插件-Tampermonkey

通过安装脚本来实现浏览器上百度云文件下载不调取客户端,破解优酷土豆vip等功能 Tampermonkey:Chrome里的“金手指” 安装 它包含:方便的脚本管理、脚本概览、设置多样性、脚本自动更新、安...

xiaoge2016
07/04
0
0
Linux下两种自动启动Tomcat的方法

有很多办法可以让Tomcat在系统启动的时候自动运行,我这里介绍两种方法,一种简单,另外一种复杂而专业。在介绍这两个方法前你应该先装 JDK,Tomcat。Tomcat的安装很简单,下载二进制压缩包 ...

红薯
2008/10/05
665
1

没有更多内容

加载失败,请刷新页面

加载更多

负载均衡的解决方案有哪些

负载均衡器服务可满足大型组织的需求,支持所有数据中心和跨数据中心高可靠性场景。 本地负载均衡,通过附带或者未附带持久性覆盖选项,Incapsula支持各种负载均衡算法,以优化服务器之间的流...

上树的熊
今天
5
0
Java实现在线打开word文档加盖印章/盖章/签名功能

前言: 我们知道,大型一点的OA办公系统都会有很多在线处理office办公文档的需求。其中有一点也基本绕不开,那就是为文档盖章或添加手写签名来保护文档,让被盖章的文档不再被编辑。 在Java中...

山里的红杏
今天
6
0
js控制输入正负数,小数点后保留两位

//限制数字function clearNoNum(obj){ //修复第一个字符是小数点 的情况. if(obj.value !=''&& obj.value.substr(0,1) == '.'){ obj.value=""; } obj.value ...

一直在成长的程序猿
今天
3
0
动态代理

具体场景 为了使代理类与被代理类对第三方有相同的函数,代理类与被代理类一般实现一个公共的interface,定义如下 public interface Subject { void rent(); void hello(String s)...

wuyiyi
今天
3
0
时间字段

我们看看这几个数据库中(mysql、oracle和sqlserver)如何表示时间 mysql数据库:它们分别是 date、datetime、time、timestamp和year。date :“yyyy-mm-dd”格式表示的日期值 time :“hh:...

DemonsI
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部