文档章节

go安装方法及安装脚本

waynehu
 waynehu
发布于 2013/05/06 15:35
字数 1014
阅读 475
收藏 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
粉丝 33
博文 51
码字总数 25481
作品 0
静安
喵拉布丁/KF_Online_Assistant

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

喵拉布丁
2015/09/19
0
0
Youtube 网站视频和字幕下载

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

yelang007sheng
2017/03/18
0
0
基于ansible的zabbix源代码安装

基于ansible的zabbix源代码安装 1、ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置...

听雨x
2017/10/22
0
0
谷歌插件-Tampermonkey

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

xiaoge2016
07/04
0
0
动态扩展Nginx支持Lua功能

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

在下郑小明
2017/05/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

[雪峰磁针石博客]软件测试专家工具包1web测试

web测试 本章主要涉及功能测试、自动化测试(参考: 软件自动化测试初学者忠告) 、接口测试(参考:10分钟学会API测试)、跨浏览器测试、可访问性测试和可用性测试的测试工具列表。 安全测试工具...

python测试开发人工智能安全
今天
2
0
JS:异步 - 面试惨案

为什么会写这篇文章,很明显不符合我的性格的东西,原因是前段时间参与了一个面试,对于很多程序员来说,面试时候多么的鸦雀无声,事后心里就有多么的千军万马。去掉最开始毕业干了一年的Jav...

xmqywx
今天
2
0
Win10 64位系统,PHP 扩展 curl插件

执行:1. 拷贝php安装目录下,libeay32.dll、ssleay32.dll 、 libssh2.dll 到 C:\windows\system32 目录。2. 拷贝php/ext目录下, php_curl.dll 到 C:\windows\system32 目录; 3. p...

放飞E梦想O
今天
0
0
谈谈神秘的ES6——(五)解构赋值【对象篇】

上一节课我们了解了有关数组的解构赋值相关内容,这节课,我们接着,来讲讲对象的解构赋值。 解构不仅可以用于数组,还可以用于对象。 let { foo, bar } = { foo: "aaa", bar: "bbb" };fo...

JandenMa
今天
1
0
OSChina 周一乱弹 —— 有人要给本汪介绍妹子啦

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享水木年华的单曲《中学时代》@小小编辑 手机党少年们想听歌,请使劲儿戳(这里) @须臾时光:夏天还在做最后的挣扎,但是晚上...

小小编辑
今天
48
8

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部