Ubuntu 安装 gvm 管理 Go 语言开发环境

文章目录

  • 简介
  • 安装依赖
  • [安装 GVM](#安装 GVM)
  • [安装 Go 版本](#安装 Go 版本)
  • [Go 环境变量](#Go 环境变量)

简介

本文详细介绍如何在Ubuntu系统上使用GVM(Go Version Manager)搭建Go语言开发环境,包括GVM的安装、配置环境变量、安装和切换不同版本的Go语言,以及常用开发环境优化技巧。通过GVM,你可以轻松管理多个Go版本,满足不同项目的开发需求,提高Go开发效率和环境可控性。

安装依赖

bash 复制代码
sudo apt update
sudo apt install -y curl git mercurial make binutils bison gcc build-essential

安装 GVM

bash 复制代码
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
  • 安装完成后,重新加载 shell 配置
bash 复制代码
source ~/.gvm/scripts/gvm
  • 可以在 ~/.bashrc 或 ~/.zshrc 中添加这一行,让每次打开终端都自动加载
bash 复制代码
[[ -s "$HOME/.gvm/scripts/gvm" ]] && source "$HOME/.gvm/scripts/gvm"
bash 复制代码
gvm version

安装 Go 版本

  • 查看可安装的 Go 版本
bash 复制代码
gvm listall
  • 安装指定版本
bash 复制代码
gvm install go1.25.0 -B  # -B 表示二进制安装,可加快速度
  • 列出已安装版本
bash 复制代码
gvm list
  • 设置默认版本
bash 复制代码
gvm use go1.25.0 --default
  • 查看 go 版本
bash 复制代码
go version
  • 切换 Go 版本
bash 复制代码
gvm use go1.24.0
  • 清理 Go modules 缓存
bash 复制代码
gvm use go1.24.2 && go clean -modcache
  • 卸载 Go 版本
bash 复制代码
gvm use go1.24.2 && go clean -modcache
gvm uninstall go1.24.2

Go 环境变量

bash 复制代码
vim ~/.bashrc
bash 复制代码
export GO111MODULE=on
export GOPROXY=https://goproxy.cn,direct
export GO_BINARY_BASE_URL=https://mirrors.aliyun.com/golang/
export G_MIRROR=https://golang.google.cn/dl/

[[ -s "$HOME/.gvm/scripts/gvm" ]] && source "$HOME/.gvm/scripts/gvm"
export GOROOT_BOOTSTRAP=$GOROOT
bash 复制代码
source ~/.bashrc
  • Go 环境信息
bash 复制代码
go env
相关推荐
java_logo2 分钟前
Docker 部署 MinerU 教程:打造你的本地 PDF 智能处理中心
linux·运维·人工智能·docker·ai·容器·aigc
硬核子牙8 分钟前
gdb单步调试底层实现原理
linux
Dovis(誓平步青云)14 分钟前
《剖析 Linux 文件系统:架构、原理与实战操作指南》
linux·运维·服务器
千百元14 分钟前
centos查线程数
linux·运维·centos
---学无止境---16 分钟前
Linux中基数树标签相关操作函数的实现
linux
or77iu_N1 小时前
Linux 解压安装(安装tomcat)
linux·运维·tomcat
海棠蚀omo2 小时前
Linux操作系统-父进程的等待:一个关于回收与终结的故事
linux·操作系统
乌萨奇也要立志学C++2 小时前
【Linux】Ext系列文件系统 从磁盘结构到文件存储的原理剖析
android·linux·缓存·1024程序员节
软安科技2 小时前
专有软件使用Linux内核的用户头文件违反GPL吗?| 开源合规场景
linux·开源软件·开源协议
A-刘晨阳2 小时前
K8S 二进制集群搭建(一主两从)
linux·运维·云原生·容器·kubernetes