Linux系统下Go语言开发环境搭建

 更新时间:2022年04月16日 15:38:37   作者:Oops!  
这篇文章主要介绍了Linux系统下Go开发环境搭建,需要的朋友可以参考下

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

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

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

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

下载Go文件压缩包

Golang中国社区下载Go语言的源码,Linux命令行下可以执行如下命令:

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

下载完后解压文件:

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

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

mv go/ /usr/local/

Go配置环境变量

使用vim编辑器打开/etc/profile文件:

vim /etc/profile

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

#set go environment
GOROOT=/usr/local/go
GOBIN=$GOROOT/bin
PATH=$PATH:$GOBIN/
export GOROOT  GOBIN PATH

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

source /etc/profile

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

echo $GOROOT

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

vim ~/.profile

在最下面编辑如下内容:

export GOPATH=/data/go

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

source ~/.profile

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

package main

import "fmt"

func main() {
fmt.Println("Hello, 世界!")
}

保存后运行:

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

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

更多关于Linux系统下Go语言开发环境搭建请查看下面的相关链接

相关文章

  • golang 实现Location跳转方式

    golang 实现Location跳转方式

    这篇文章主要介绍了golang 实现Location跳转方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • Go 的入口函数和包初始化的使用

    Go 的入口函数和包初始化的使用

    本文主要介绍了Go 的入口函数和包初始化的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • golang 各种排序大比拼实例

    golang 各种排序大比拼实例

    这篇文章主要介绍了golang 各种排序大比拼实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 浅谈Go用于同步和并发控制的几种常见锁

    浅谈Go用于同步和并发控制的几种常见锁

    本文主要介绍了浅谈Go用于同步和并发控制的几种常见锁,包括互斥锁、读写锁和一次性锁等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • go REST API设计模式和反模式示例解析

    go REST API设计模式和反模式示例解析

    在这篇文章中,我们将探讨一些常见的REST API设计模式和开发者应该注意的反模式,我们还将提供Golang和Open API Schema的代码片段来帮助说明这些概念,有需要的朋友可以借鉴参考下
    2023-09-09
  • 解析Golang中的锁竞争问题

    解析Golang中的锁竞争问题

    这篇文章主要介绍了golang中的锁竞争问题,本文通过实例代码给大家详细讲解,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • 基于Go语言实现高性能文件上传下载系统

    基于Go语言实现高性能文件上传下载系统

    在Web应用开发中,文件上传下载是一个非常常见的需求,本文将介绍如何使用Go语言实现一个安全、高效的本地文件存储系统,感兴趣的小伙伴可以了解下
    2025-03-03
  • golang基础之waitgroup用法以及使用要点

    golang基础之waitgroup用法以及使用要点

    WaitGroup是Golang并发的两种方式之一,一个是Channel,另一个是WaitGroup,下面这篇文章主要给大家介绍了关于golang基础之waitgroup用法以及使用要点的相关资料,需要的朋友可以参考下
    2023-01-01
  • Go创建一个包并使用(导入本地包和注意事项)

    Go创建一个包并使用(导入本地包和注意事项)

    有时候需要自己写一个包方便多次使用,但是在导入自己写的包时遇到了问题,本文主要介绍了Go创建一个包并使用(导入本地包和注意事项),感兴趣的可以了解一下
    2023-11-11
  • Go实现分布式唯一ID的生成之雪花算法

    Go实现分布式唯一ID的生成之雪花算法

    本文主要介绍了Go实现分布式唯一ID的生成之雪花算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05

最新评论