Go 语言是由谷歌的科学家开发的,并开源的新语言,被誉为“21世纪的C语言”,它的主要目标是将静态语言的安全性和高效性与动态语言的易开发性进行有机结合,达到完美平衡,从而使编程变得更加有乐趣,而不是在艰难抉择中痛苦前行。

最近有一个项目是处理瞬间高并发的请求,考虑到Go语言的原生支持并发的特性,以及新年之后多个项目用Go语言开发,项目组决定用Go语言开发前端抗洪服务器。工欲善其事,必先利其器,下面贴出Linux系统下Go开发环境的搭建。

网上有很多关于Go环境搭建的资料,都是先从安装mercurial开始,然后下载Go语言源码安装的。但是因为众所周知的原因,在中国大陆无法稳定地访问谷歌的服务器,所以上面那个方法很多情况下是不可行的,除非使用了代理。以下介绍一个非常简单而且非常有效的方法来搭建Go开发环境。

注意:在Linux下安装Go开发环境请使用root用户。

####下载Go文件压缩包
Golang中国社区下载Go语言的源码,Linux命令行下可以执行如下命令:

1

wget https://www.golangtc.com/static/go/1.8.3/go1.8.3.linux-amd64.tar.gz

下载完后解压文件:

1
tar -zxvf go1.8.3.linux-amd64.tar.gz

得到一个go目录,执行以下命令,移动到/usr/local/目录下:

1
mv go/ /usr/local/

####Go配置环境变量
使用vim编辑器打开/etc/profile文件:

1
vim /etc/profile

在最底部加入如下内容,配置Go语言环境变量:

1
2
3
4
5
#set go environment
GOROOT=/usr/local/go
GOBIN=$GOROOT/bin
PATH=$PATH:$GOBIN/
export GOROOT  GOBIN PATH

环境变量配置在code>/etc/profile文件里能保证该机器上每个用户都能使用这个环境变量。执行如下命令使环境变量生效:

1
source /etc/profile

验证环境变量是否生效,如果控制台输出上面配置的路径,则说明配置成功:

1
echo $GOROOT

切换到部署Go服务的用户下,当然可以继续是root用户下,配置GOPATH环境变量:

1
vim ~/.profile

在最下面编辑如下内容:

1
export GOPATH=/data/go

然后在运行如下命令使环境变量生效:

1
source ~/.profile

在/data/go目录下创建一个main.go文件,写入以下内容:

1
2
3
4
5
6
7
package main
 
import "fmt"
 
func main() {
fmt.Println("Hello, 世界!")
}

保存后运行:

1
2
go run /data/go/main.go
Hello, 世界!

成功打印出信息就表示安装成功了!!

Linux系统Go开发环境搭建的更多相关文章

  1. 【课程分享】深入浅出嵌入式linux系统移植开发 (环境搭建、uboot的移植、嵌入式内核的配置与编译)

    深入浅出嵌入式linux系统移植开发 (环境搭建.uboot的移植.嵌入式内核的配置与编译) 亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系 ...

  2. Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

    1. openSUSE是一款优秀的linux. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRjYXN0Y3Bw/font/5a6L5L2T/font ...

  3. Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

    1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux  opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2 ...

  4. Linux CentOS Python开发环境搭建教程

      CentOS安装Python 1.CentOS已经自带安装了2.x版本,先尝试python命令检查已安装的版本.如果你使用rpm.yum或deb命令安装过,请使用相对命令查询. 2.复制安装文件链 ...

  5. MAC系统 -java开发环境搭建

    MAC - java开发环境搭建 软件: jdk Intellij IDEA:java开发工具 maven:jar包管理 git :源码管理 sourceTree :源码管理GUI客户端 Studio ...

  6. Linux下PHP开发环境搭建

    平时写程序时都是在服务器已经搭建好的PHP环境进行的.出于对未知知识的好奇,这几天在自己的机器上搭建起了PHP开发环境.本想轻松顺利的看到phpinfo显示在我的页面上,没想到安装环境时一路的erro ...

  7. QGIS 3.14插件开发——Win10系统PyCharm开发环境搭建四步走

    前言:最近实习要求做一个QGIS插件,网上关于QGIS 3.14插件开发环境搭建的文档不多,而且也不算太全面.正好实习的时候写了一个文档,在这里给大家分享一下. 因为是Word转的Markdown,可 ...

  8. node在Fedora 22系统下开发环境搭建

    事实上,环境搭建在linux系统还是比較简单的,下载已经编译好的包,配置一下环境变量. 或者下载源代码,自己编译. 这里记录一下,主要是node版本号变化节奏很块的情况下.怎样配置一次环境变量就不要再 ...

  9. 【linux系统】java环境搭建

    搭建步骤 1.安装java : 上传java安装包到linux系统----- rz jdk-8u202-linux-x64.tar.gz jdk下载地址:https://www.oracle.com/ ...

随机推荐

  1. php常用数据结构

    # 常用数据结构--------------------------------------------------------------------------------## 树(Tree)- ...

  2. Linux/Unix系统SSH远程按Backspace键删除时出现^H的处理方法

    在linux/unix系统中连接SSH远程工作时,输出字符后按Backspace键删除时,会出现^H,这对习惯了按Backspace键删除的用户来说,感觉非常别扭,虽然可以通过Ctrl+Backspa ...

  3. dede 你所上传的软件类型不在许可列表,请更改系统对扩展名限定的配置

    后台,系统,系统基本参数,附件设置格式

  4. [拾 得] 一枚迷人的贝壳 SHELL / Linux | shell 脚本初步入门

    坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/   索引: 什么是shell shell的分类 shell脚本的执行方式   ...

  5. Visio绘制用例图问题集锦

    1.Visio画UML用例图没有include关系的解决方法 发现Visio UML用例里面找不到include关系,即"箭头"+"<<include> ...

  6. java.lang.reflect.InvocationTargetException

    java.lang.reflect.InvocationTargetException是什么情况?java.lang.reflect.InvocationTargetExceptionat sun.r ...

  7. JavaScript总结学习一:js中构造函数与普通函数的区别

    构造函数不仅只出现在JavaScript中,它同样存在于很多主流的程序语言里,比如c++.Java.PHP等等.与这些主流程序语言一样,构造函数在js中的作业一样,也是用来创建对象时初始化对象,并且总 ...

  8. 进程间通信之利用CreateFilemapping()

    这两天在复习进程间通信,复习一下记不住,复习一下记不住...就写个小博客献个丑,先来第一个内存映射 代码亲测通过 CreateFileMapping()的最后的一位用来做进程间通信 步骤: 1.Cre ...

  9. python3 第二十二章 - 函数式编程之Decorator(装饰器)

    前面我们说了,在python中,一切皆对象.函数也是一个对象,而且函数对象可以被赋值给变量,通过变量也能调用该函数.如: def sayHello(name): print(name + ' hell ...

  10. python3 第十一章 - 数据类型之str(字符串)

    字符串是 Python 中最常用的数据类型,我们可以使用引号 ' 或 " 来创建字符串,例如: name = 'roy' sex = "男" 1.访问字符串中的值 Pyt ...