Golang 语言怎么安装多个 Golang 版本的环境?

简介: Golang 语言怎么安装多个 Golang 版本的环境?

介绍

Golang 语言安装(环境搭建)有三种方式,包括二进制方式安装、源码方式安装和 go 命令方式安装。Golang 语言支持多个平台和操作系统,比如 Windows,Mac 和 Linux。

二进制文件方式安装

Golang 官方网站提供了三种操作系统的二进制文件,我们只需下载对应系统的二进制文件后,按照安装说明进行操作即可。

以 Mac 系统为例,第一步是下载 Mac 系统的二进制文件 Golang 安装程序,第二步是打开下载的二进制文件 Golang 安装程序,按照提示安装 Golang。

该二进制文件 Golang 安装程序将 Golang 发行版安装到 /usr/local/go。并且自动将 /usr/local/go/bin 目录加入 PATH 环境变量中。

第三步是验证 Golang 是否安装成功,在终端中输入 go version 命令,如果可以输出我们下载的二进制文件 Golang 安装程序的正确版本号,证明 Golang 已安装成功。

Windows 系统和 Mac 系统大致相同,接下来,我们再介绍一下 Linux 系统的二进制方式安装步骤。

第一步是下载 Linux 系统的二进制文件 Golang 安装程序。然后将下载的压缩文件解压缩到目录 /usr/local,会在目录 /usr/local 中创建一个目录 /usr/local/go。需要注意的是,该操作需要在解压缩操作之前删除旧的目录 /usr/local/go (如果有),所以请务必提前做好数据备份。

示例命令:

rm -rf /usr/local/go && tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz

第二步是将 /usr/local/go/bin 加入 PATH 环境变量。我们可以使用以下示例命令选择添加到 $HOME/.profile (局部) 或 /etc/profile (全局)。

示例命令:

export PATH=$PATH:/usr/local/go/bin

需要注意的是,修改配置文件后,如果需要立即生效,可以执行命令 source 配置文件目录

第三步是验证 Golang 是否安装成功,在终端中输入 go version 命令,如果可以输出我们下载的二进制文件 Golang 安装程序的正确版本号,证明 Golang 已安装成功。

03

源码方式安装

源码方式安装方式相比二进制方式安装复杂一些,如非必要,建议使用二进制方式安装。

Golang 1.5 版本开始实现自举,Golang 的编译器也是使用 Golang 写的,我们使用源码安装方式,就需要先准备 Golang 的编译环境,我们可以先下载一个 Golang 1.4 版本,因为 Golang 1.5 之前的版本是使用 C 语言写的 Golang 编译器,所以我们可以使用 Linux 的 gcc 编译一个 Golang 编译环境。然后使用这个 Golang 编译环境来编译新版本的 Golang 环境。

另外一种方式是先使用 Linux 版本的二进制文件 Golang 安装程序来安装 Golang。然后使用这个 Golang 环境编译新版本的 Golang。

以上两种方式,任选其一(推荐第二种方式)。

我们有了 Golang 环境,就可以使用该 Golang 环境编译新的 Golang。

第一步是设置环境变量 GOROOT_BOOTSTRAP,值为我们预先准备好的 Golang 编译环境的根目录,比如 /usr/local/go1.8

示例命令:

export GOROOT_BOOTSTRAP=/usr/local/go1.8

第二步是使用 Git 下载最新的 Golang 源码(如果还未安装 Git,请先安装 Git),然后使用 git checkout 切换到某个版本,然后执行编译命令,再然后是设置环境变量 GOROOTGOPATH

示例命令:

#拉取最新的 Golang 源码
~ cd /usr/local/src/
~ git clone git@github.com:golang/go.git
#查看 tag
~ cd go
~ git tag
#切换到某个版本
~ git checkout go1.16
#执行编译
~ cd src
~ ./all.bash
#设置环境变量
~ export GOROOT=/usr/local/go
~ export GOPATH=$HOME/go

第三步是验证 Golang 是否安装成功,在终端中输入 go version 命令,如果可以输出我们下载的二进制文件 Golang 安装程序的正确版本号,证明 Golang 已安装成功。

04

go 命令安装多个版本

我们如果想在我们的电脑上安装多个 Golang 版本,我们可以使用 go 命令的方式安装多个版本,该方式需要使用 git,如果还未安装 git,请先安装 git。

第一步是使用 go get 命令指定安装的 Golang 版本的下载地址,执行该命令后,会下载到目录 $GOPATH/bin 中一个可执行文件,比如 go1.16.5

第二步是执行命令 go1.16.5 download,下载 sdk,下载目录为 $HOME/sdk/,查看该目录,我们可以发现该目录中有一个目录名为 go1.16.5 的目录。

第三步是验证 Golang 是否安装成功,在终端输入 go1.16.5 version 命令,如果可以输出正确版本号,证明该版本的 Golang 已安装成功。

示例命令:

go get golang.org/dl/go1.16.5
go1.16.5 download
go1.16.5 version

我们可以使用以上三个步骤安装多个 Golang 版本的 Golang 环境,并且可以在 IDE(比如 GoLand ) 中切换使用不同的 Golang 环境。

05

总结

本文我们主要是介绍怎么安装不同版本的 Golang 环境,文章开头先是介绍怎么使用二进制文件方式和源码方式安装 Golang 环境,原因是安装不同版本的 Golang 环境使用 go get,也就是说该方式必须是在已存在 Golang 环境的基础上才可以使用。

关于 Golang 环境的安装,建议读者朋友们使用二进制文件的 Golang 安装程序的方式安装 Golang,该方式是最简单的方式,并且 Golang 官方网站提供了多个平台和操作系统的二进制文件。(PS:三方安装方式本文未叙述,比如 Mac 系统的 brew。如果读者朋友们感兴趣,建议自行查找相关资料。)

推荐阅读:

Golang 语言中的非类型安全指针

参考资料:

https://golang.org/doc/install 

https://golang.org/doc/install/source 

https://golang.org/doc/manage-install <br/<

目录
相关文章
|
3月前
|
算法 Go
golang力扣leetcode 587.安装栅栏
golang力扣leetcode 587.安装栅栏
19 0
|
1月前
|
SQL 前端开发 Go
编程笔记 GOLANG基础 001 为什么要学习Go语言
编程笔记 GOLANG基础 001 为什么要学习Go语言
|
3月前
|
物联网 Go 网络性能优化
使用Go语言(Golang)可以实现MQTT协议的点对点(P2P)消息发送。MQTT协议本身支持多种消息收发模式
使用Go语言(Golang)可以实现MQTT协议的点对点(P2P)消息发送。MQTT协议本身支持多种消息收发模式【1月更文挑战第21天】【1月更文挑战第104篇】
101 1
|
2天前
|
安全 Go 开发者
Golang深入浅出之-Go语言并发编程面试:Goroutine简介与创建
【4月更文挑战第22天】Go语言的Goroutine是其并发模型的核心,是一种轻量级线程,能低成本创建和销毁,支持并发和并行执行。创建Goroutine使用`go`关键字,如`go sayHello(&quot;Alice&quot;)`。常见问题包括忘记使用`go`关键字、不正确处理通道同步和关闭、以及Goroutine泄漏。解决方法包括确保使用`go`启动函数、在发送完数据后关闭通道、设置Goroutine退出条件。理解并掌握这些能帮助开发者编写高效、安全的并发程序。
10 1
|
2天前
|
SQL 关系型数据库 MySQL
Golang数据库编程详解 | 深入浅出Go语言原生数据库编程
Golang数据库编程详解 | 深入浅出Go语言原生数据库编程
|
3天前
|
Go 开发者
Golang深入浅出之-Go语言流程控制:if、switch、for循环详解
【4月更文挑战第21天】本文介绍了Go语言中的流程控制语句,包括`if`、`switch`和`for`循环。`if`语句支持简洁的语法和初始化语句,但需注意比较运算符的使用。`switch`语句提供多分支匹配,可省略`break`,同时支持不带表达式的形式。`for`循环有多种形式,如基本循环和`for-range`遍历,遍历时修改原集合可能导致未定义行为。理解并避免易错点能提高代码质量和稳定性。通过实践代码示例,可以更好地掌握Go语言的流程控制。
11 3
Golang深入浅出之-Go语言流程控制:if、switch、for循环详解
|
3天前
|
Go
Golang深入浅出之-Go语言函数基础:定义、调用与多返回值
【4月更文挑战第21天】Go语言函数是代码组织的基本单元,用于封装可重用逻辑。本文介绍了函数定义(包括基本形式、命名、参数列表和多返回值)、调用以及匿名函数与闭包。在函数定义时,注意参数命名和注释,避免参数顺序混淆。在调用时,要检查并处理多返回值中的错误。理解闭包原理,小心处理外部变量引用,以提升代码质量和可维护性。通过实践和示例,能更好地掌握Go语言函数。
17 1
Golang深入浅出之-Go语言函数基础:定义、调用与多返回值
|
4天前
|
Go
Golang深入浅出之-Go语言基础语法:变量声明与赋值
【4月更文挑战第20天】本文介绍了Go语言中变量声明与赋值的基础知识,包括使用`var`关键字和简短声明`:=`的方式,以及多变量声明与赋值。强调了变量作用域、遮蔽、初始化与零值的重要性,并提醒读者注意类型推断时的一致性。了解这些概念有助于避免常见错误,提高编程技能和面试表现。
19 0
|
1月前
|
Go 开发工具 git
编程笔记 GOLANG基础 003 Go语言开发环境搭建
编程笔记 GOLANG基础 003 Go语言开发环境搭建
|
1月前
|
存储 Java Go
编程笔记 GOLANG基础 002 Go语言简介
编程笔记 GOLANG基础 002 Go语言简介