go语言下载安装

简介: go语言下载安装

一、window下载安装

1、下载

官网下载地址

https://go.dev/

中国地区官网

https://golang.google.cn/

注意:下载 Windows 版本的Go语言开发包时尽量选择 MSI 格式,因为它可以直接安装到系统,不需要额外的操作。

2、安装

双击我们下载好的Go语言开发包即可启动安装程序,在 Windows 系统下Go语言开发包会默认安装到 C 盘的 Go 目录下,推荐在这个目录下安装,使用起来较为方便。当然,你也可以选择其他的安装目录,确认无误后点击“Next”,如下图所示:

等待程序完成安装,然后点击“Finish”退出安装程序。

安装文件如下

这个目录的结构遵守 GOPATH 规则,后面的章节会提到这个概念。目录中各个文件夹的含义如下表所示。

Go 开发包的安装目录的功能及说明

目录名 说明
api 每个版本的 api 变更差异
bin go 源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt)
doc 英文版的 Go 文档
lib 引用的一些库文件
misc 杂项用途的文件,例如 Android 平台的编译、git 的提交钩子等
pkg Windows 平台编译好的中间文件
src 标准库的源码
test 测试用例

开发时,无须关注这些目录

3、环境变量配置

3.1、配置GOROOT

系统变量(注意是系统变量 不是环境变量),首先查看path,如果默认已经配置了go安装目录下的bin,我们就不再配置go root路径,默认没有配置手动配置即可

首先创建一个系统变量GOROOT

修改path

3.2、配置GO PATH

GOPATH 是一个路径,用来存放开发中需要用到的代码包&go项目。这里在e盘下创建一个gopath文件夹,并且创建三个子文件夹src、pkg、bin

然后把这个gopath配置到环境变量(注意是环境变量 不是系统变量),如果已经有了GOPATH,将值修改成上面创建的gopath路径即可

配置好之后cmd输入go env可以查看

二、Linux上安装Go语言开发包

1、下载

大家可以在Go语言官网找到对应的安装包(Downloads - The Go Programming Language),但是先不要急着下载。

注意:开发包有 32 位和 64 位两个版本,需要根据读者电脑的情况选择不同的版本。

2、安装

首先,复制Go语言开发包的下载链接(https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz)。然后,在终端使用cd 命令进入你用来存放安装包的目录中(这里使用的是 /usr/local/ 目录,读者也可以使用其它目录)。

root@ububtu:~# cd /usr/local/

root@ububtu:/usr/local#

使用wget 命令下载Go语言开发包,如下所示。

root@ububtu:/usr/local# wget https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz
--2019-11-06 10:47:23--  https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz
正在解析主机 dl.google.com (dl.google.com)... 203.208.39.196, 203.208.39.193, 203.208.39.200, ...
正在连接 dl.google.com (dl.google.com)|203.208.39.196|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 120054682 (114M) [application/octet-stream]
正在保存至: “go1.13.4.linux-amd64.tar.gz”
 
go1.13.4.linux  43%  49.44M  3.56MB/s    剩余 16s         ^go1.13.4.linux 100% 114.49M  4.73MB/s    用时 31s        
 
2019-11-06 10:47:56 (3.67 MB/s) - 已保存 “go1.13.4.linux-amd64.tar.gz” [120054682/120054682])

使用tar 命令解压刚刚下载的Go语言开发包。

root@ububtu:/usr/local# tar -C /usr/local -xzf go1.13.4.linux-amd64.tar.gz

解压成功后会在当前目录下新增一个 go 目录,至此我们的Go语言开发包就安装完成了,使用cd 命令进入该目录,然后执行bin/go version 命令就可以查看当前Go语言的版本了。

root@ububtu:/usr/local/go# bin/go version
go version go1.13.4 linux/amd64

3、环境变量

配置环境变量

我们需要配置 2 个环境变量分别是 GOROOT 和 PATH。

  • GOROOT 的值应该为Go语言的当前安装目录:export GOROOT=/usr/local/go
  • PATH 为了方便使用Go语言命令和 Go 程序的可执行文件,需要追加其值:export PATH=$PATH:$GOROOT/bin:$GOBIN

为了方便以后的使用,需要把这几个环境变量添加 profile 文件中(~/.bash_profile 或 /etc/profile)。如果是单用户使用,可以将环境变量添加在 home 目录下的 bash_profile 文件中,如果是多用户使用,需要添加在 /etc/profile 文件。(推荐大家在 /etc/profile 文件中设置环境变量)


使用vi /etc/profile 命令打开 profile 文件,并将环境变量添加到文件末尾。

 

添加完成后使用:wq 命令保存并退出。


然后,使用 source /etc/profile 命令使配置文件生效,现在就可以在任意目录使用Go语言命令了。

在任意目录下使用终端执行 go env 命令,输出如下结果说明Go语言开发包已经安装成功。

三、Mac OS上安装Go语言开发包

1、下载

大家可以在Go语言官网下载对应版本的的安装包(Downloads - The Go Programming Language

2、安装

Mac OS 的Go语言开发包是 .pkg 格式的,双击我们下载的安装包即可开始安装。

 

Mac OS 下是傻瓜式安装,一路点击“继续”即可,不再赘述。

 

安装包会默认安装在 /usr/local 目录下,如下所示。

 

安装完成之后,在终端运行 go version,如果显示类似下面的信息,表明安装成功。

go version go1.13.4 darwin/amd64

3、环境变量

设置 GOPATH 环境变量

开始写 go 项目代码之前,需要我们先配置好环境变量。编辑 ~/.bash_profile(在终端中运行 vi ~/.bash_profile 即可)来添加下面这行代码(如果你找不到 .bash_profile,那自己创建一个就可以了)

export GOPATH=$HOME/go

保存然后退出你的编辑器。然后在终端中运行下面命令

source ~/.bash_profile

提示:$HOME 是每个电脑下的用户主目录,每个电脑可能不同,可以在终端运行 echo $HOME 获取

GOROOT 也就是 Go 开发包的安装目录默认是在 /usr/local/go,如果没有,可以在 bash_profile 文件中设置。

export GOROOT=/usr/local/go

然后保存并退出编辑器,运行 source ~/.bash_profile 命令即可。


相关文章
|
1天前
|
存储 安全 编译器
go语言中进行不安全的类型操作
【5月更文挑战第10天】Go语言中的`unsafe`包提供了一种不安全但强大的方式来处理类型转换和底层内存操作。包含两个文档用途的类型和八个函数,本文也比较了不同变量和结构体的大小与对齐系数,强调了字段顺序对内存分配的影响。
43 8
go语言中进行不安全的类型操作
|
1天前
|
Go
配置go语言下载包 - 蓝易云
这个命令会将包下载到你的GOPATH目录下,并自动安装它。
25 1
|
2天前
|
安全 Go 调度
Go语言中的并发编程
Go语言自带了强大的并发编程能力,它的协程机制可以让程序轻松地实现高并发。本文将从并发编程的基础概念出发,介绍Go语言中的协程机制、通道和锁等相关知识点,帮助读者更好地理解并发编程在Go语言中的实践应用。
|
4天前
|
Ubuntu Unix Linux
【GO基础】1. Go语言环境搭建
【GO基础】1. Go语言环境搭建
|
5天前
|
JSON 前端开发 Go
lucky - go 语言实现的快速开发平台
go 语言实现的快速开发平台,自动生成crud代码,前端页面通过json配置,无需编写前端代码。
11 0
|
6天前
|
存储 Java Go
Go 语言切片如何扩容?(全面解析原理和过程)
Go 语言切片如何扩容?(全面解析原理和过程)
16 2
|
6天前
|
负载均衡 Go 调度
使用Go语言构建高性能的Web服务器:协程与Channel的深度解析
在追求高性能Web服务的今天,Go语言以其强大的并发性能和简洁的语法赢得了开发者的青睐。本文将深入探讨Go语言在构建高性能Web服务器方面的应用,特别是协程(goroutine)和通道(channel)这两个核心概念。我们将通过示例代码,展示如何利用协程处理并发请求,并通过通道实现协程间的通信和同步,从而构建出高效、稳定的Web服务器。
|
6天前
|
算法 Go 分布式数据库
构建高可用的分布式数据库集群:使用Go语言与Raft共识算法
随着数据量的爆炸式增长,单一数据库服务器已难以满足高可用性和可扩展性的需求。在本文中,我们将探讨如何使用Go语言结合Raft共识算法来构建一个高可用的分布式数据库集群。我们不仅会介绍Raft算法的基本原理,还会详细阐述如何利用Go语言的并发特性和网络编程能力来实现这一目标。此外,我们还将分析构建过程中可能遇到的挑战和解决方案,为读者提供一个完整的实践指南。
|
6天前
|
消息中间件 Go API
基于Go语言的微服务架构实践
随着云计算和容器化技术的兴起,微服务架构成为了现代软件开发的主流趋势。Go语言,以其高效的性能、简洁的语法和强大的并发处理能力,成为了构建微服务应用的理想选择。本文将探讨基于Go语言的微服务架构实践,包括微服务的设计原则、服务间的通信机制、以及Go语言在微服务架构中的优势和应用案例。
|
6天前
|
安全 测试技术 数据库连接
使用Go语言进行并发编程
【5月更文挑战第15天】Go语言以其简洁语法和强大的并发原语(goroutines、channels)成为并发编程的理想选择。Goroutines是轻量级线程,由Go运行时管理。Channels作为goroutine间的通信机制,确保安全的数据交换。在编写并发程序时,应遵循如通过通信共享内存、使用`sync`包同步、避免全局变量等最佳实践。理解并发与并行的区别,有效管理goroutine生命周期,并编写测试用例以确保代码的正确性,都是成功进行Go语言并发编程的关键。