Go 开发环境安装(Windows、macOS、Linux)

0 阅读10分钟

Go 编程实战系列(二)

上一篇我们介绍了《为什么学习 Go?Go 能做什么?》,了解了 Go 语言在 Web 后端、微服务、云原生、网络编程和运维工具等领域的应用。

从本篇开始,我们正式进入 Go 编程实践。

要编写和运行 Go 程序,首先需要安装 Go 开发环境。本文将分别介绍 Windows、macOS 和 Linux 三个平台的安装方法,并带你完成环境验证、常用配置以及第一个 Go 项目的创建。

学习完本文后,你将能够:

  • 正确安装 Go 开发环境

  • 使用 go version 验证安装结果

  • 理解 GOROOT、GOPATH 和 Go Modules

  • 配置 Go 模块代理

  • 创建并运行第一个 Go 项目

  • 解决常见的环境配置问题


一、安装 Go 前需要了解什么?

Go 是一门编译型语言。

我们编写的 .go 源代码需要通过 Go 编译器转换成可执行程序,然后才能运行。

安装 Go 开发环境后,系统中会增加一系列命令,例如:

go version
go env
go run
go build
go test
go mod

其中,最核心的是 go 命令。

它可以完成:

  • 运行 Go 程序

  • 编译项目

  • 管理依赖

  • 执行测试

  • 格式化代码

  • 安装开发工具

因此,安装 Go 的本质,就是安装 Go 编译器、标准库和配套命令行工具。


二、下载 Go 安装包

建议从 Go 官方网站下载稳定版本。

下载时,需要根据操作系统和处理器架构选择对应的安装包。

常见平台包括:

  • Windows 64 位

  • macOS Intel 芯片

  • macOS Apple Silicon 芯片

  • Linux x86-64

  • Linux ARM64

不同处理器架构不能随意混用。

例如,Apple M 系列芯片的 Mac 通常应选择 ARM64 版本,而较老的 Intel Mac 应选择 AMD64 或 x86-64 版本。

如果不确定电脑架构,可以先查看系统信息。


三、Windows 安装 Go

Windows 平台一般使用 MSI 安装包,安装过程比较简单。

1. 下载 Windows 安装包

下载文件名称通常类似:

go1.xx.x.windows-amd64.msi

其中:

  • windows 表示 Windows 系统

  • amd64 表示 64 位处理器

  • msi 表示 Windows 安装程序

下载完成后,双击安装文件。


2. 执行安装

进入安装界面后,按照提示操作即可。

通常可以直接使用默认配置:

C:\Program Files\Go

这个目录就是 Go 的默认安装目录。

安装过程中,安装程序一般会自动将 Go 的命令目录添加到系统环境变量 PATH 中。

完成后点击“Finish”结束安装。


3. 验证安装结果

打开命令提示符。

可以按下:

Win + R

输入:

cmd

然后执行:

go version

如果输出类似:

go version go1.xx.x windows/amd64

说明 Go 已经安装成功。

继续执行:

go env

可以查看 Go 的完整环境配置。


4. Windows 找不到 go 命令

如果执行 go version 时提示:

'go' 不是内部或外部命令

说明系统没有正确找到 Go 的可执行文件。

可以检查环境变量中是否包含:

C:\Program Files\Go\bin

操作步骤如下:

  1. 右键“此电脑”
  2. 选择“属性”
  3. 打开“高级系统设置”
  4. 点击“环境变量”
  5. 找到系统变量中的 Path
  6. 检查是否包含 Go 的 bin 目录

修改完成后,应关闭并重新打开命令提示符。


四、macOS 安装 Go

macOS 可以使用官方安装包,也可以使用 Homebrew 安装。

对于初学者,推荐使用官方安装包;对于已经熟悉 Homebrew 的开发者,也可以通过命令安装。


1. 查看 Mac 处理器架构

点击左上角苹果图标,选择“关于本机”。

如果显示:

Apple M1
Apple M2
Apple M3
Apple M4

说明是 Apple Silicon 芯片,应选择 ARM64 版本。

如果显示 Intel 处理器,则选择 AMD64 版本。

也可以在终端执行:

uname -m

可能得到:

arm64

或者:

x86_64

2. 使用官方安装包

下载文件通常类似:

go1.xx.x.darwin-arm64.pkg

或者:

go1.xx.x.darwin-amd64.pkg

双击 .pkg 文件,按照安装向导完成安装。

官方安装包通常会将 Go 安装到:

/usr/local/go

Go 命令所在目录为:

/usr/local/go/bin

安装完成后,打开终端执行:

go version

如果看到:

go version go1.xx.x darwin/arm64

说明安装成功。


3. 使用 Homebrew 安装

如果电脑已经安装 Homebrew,可以执行:

brew install go

安装完成后执行:

go version

查看 Go 命令位置:

which go

Apple Silicon Mac 上可能输出:

/opt/homebrew/bin/go

Intel Mac 上可能输出:

/usr/local/bin/go

升级 Go 可以执行:

brew upgrade go

4. macOS 提示 command not found

如果执行命令时提示:

zsh: command not found: go

可以先检查 Go 是否已经安装:

ls /usr/local/go/bin/go

如果文件存在,可以编辑 Shell 配置文件。

macOS 默认通常使用 zsh:

nano ~/.zshrc

加入:

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

保存后执行:

source ~/.zshrc

然后再次验证:

go version

五、Linux 安装 Go

Linux 平台通常使用官方压缩包安装。

下面以常见的 x86-64 Linux 系统为例。


1. 下载 Go 压缩包

下载文件通常类似:

go1.xx.x.linux-amd64.tar.gz

可以使用浏览器下载,也可以通过命令行下载。

例如:

wget https://go.dev/dl/go1.xx.x.linux-amd64.tar.gz

需要将命令中的版本号替换为实际下载版本。

ARM64 服务器应选择:

linux-arm64

可以执行以下命令查看系统架构:

uname -m

常见结果:

x86_64

表示应使用 AMD64 版本。

aarch64

表示应使用 ARM64 版本。


2. 删除旧版本

如果系统之前安装过 Go,建议先删除旧目录:

sudo rm -rf /usr/local/go

不要直接将新版本覆盖到旧目录,否则可能残留旧文件,造成异常。


3. 解压安装包

执行:

sudo tar -C /usr/local -xzf go1.xx.x.linux-amd64.tar.gz

解压完成后,Go 会被安装到:

/usr/local/go

4. 配置环境变量

如果使用 Bash,可以编辑:

nano ~/.bashrc

加入:

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

保存后执行:

source ~/.bashrc

如果使用 zsh,则编辑:

nano ~/.zshrc

加入同样的配置:

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

然后执行:

source ~/.zshrc

5. 验证 Linux 安装结果

执行:

go version

如果输出类似:

go version go1.xx.x linux/amd64

说明安装成功。

查看 Go 命令位置:

which go

正常情况下会输出:

/usr/local/go/bin/go

六、认识 go env

安装完成后,可以执行:

go env

该命令会显示当前 Go 开发环境的详细信息。

其中几个重要配置需要重点了解。


1. GOROOT

GOROOT 表示 Go 的安装目录。

例如:

/usr/local/go

Windows 上可能是:

C:\Program Files\Go

该目录中包含:

  • Go 编译器

  • 标准库

  • 命令行工具

  • Go 源码

一般情况下,不需要手动修改 GOROOT


2. GOPATH

GOPATH 是 Go 的工作目录。

可以执行:

go env GOPATH

常见结果:

Windows:

C:\Users\用户名\go

macOS 和 Linux:

/Users/用户名/go

或者:

/home/用户名/go

早期 Go 项目必须放在 GOPATH 下,现在使用 Go Modules 后,项目可以放在任意目录。

不过,GOPATH 仍然会用于保存:

  • 下载的模块缓存

  • 通过 go install 安装的工具

  • 部分编译缓存

因此不建议随意删除。


3. GOPROXY

GOPROXY 用于配置 Go 模块下载代理。

查看当前配置:

go env GOPROXY

修改配置:

go env -w GOPROXY=https://proxy.golang.org,direct

在部分网络环境中,如果依赖下载较慢,可以选择可用的模块代理。

例如:

go env -w GOPROXY=https://goproxy.cn,direct

修改后重新查看:

go env GOPROXY

4. GOOS 和 GOARCH

GOOS 表示目标操作系统:

go env GOOS

常见结果:

windows
darwin
linux

GOARCH 表示处理器架构:

go env GOARCH

常见结果:

amd64
arm64

这两个配置在以后进行跨平台编译时非常重要。


七、创建第一个 Go 项目

安装完成后,我们创建一个简单项目验证环境。

首先新建项目目录:

mkdir hello-go
cd hello-go

初始化 Go Modules:

go mod init hello-go

执行后,目录中会生成:

go.mod

内容类似:

module hello-go

go 1.xx

go.mod 用于记录:

  • 项目模块名称

  • Go 版本

  • 第三方依赖

  • 依赖版本


八、编写第一个 Go 程序

在项目目录中新建文件:

main.go

写入以下代码:

package main

import "fmt"

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

代码说明:

  • package main 表示这是一个可执行程序

  • import "fmt" 导入格式化输出包

  • func main() 是程序入口

  • fmt.Println() 用于输出内容


九、运行 Go 程序

在项目目录执行:

go run main.go

也可以执行:

go run .

输出结果:

Hello, Go!

go run 会临时编译并运行程序,适合开发和测试阶段。


十、编译 Go 程序

执行:

go build

Go 会生成一个可执行文件。

Windows 下通常生成:

hello-go.exe

macOS 和 Linux 下通常生成:

hello-go

macOS 或 Linux 可以执行:

./hello-go

Windows 可以执行:

hello-go.exe

编译后的程序通常可以独立运行,不需要在目标机器上额外安装 Go。

这也是 Go 部署方便的重要原因。


十一、常用 Go 命令

安装完成后,可以先熟悉以下命令。

查看版本:

go version

查看环境配置:

go env

初始化项目:

go mod init 项目名称

运行程序:

go run .

编译程序:

go build

整理依赖:

go mod tidy

格式化代码:

gofmt -w .

执行测试:

go test ./...

安装命令行工具:

go install 包地址@版本

查看帮助:

go help

十二、常见问题

1. go 命令无法识别

错误提示可能是:

go: command not found

或者:

'go' 不是内部或外部命令

主要原因是 Go 的 bin 目录没有加入 PATH

检查以下目录是否存在:

Windows:

C:\Program Files\Go\bin

macOS 和 Linux:

/usr/local/go/bin

配置完成后,需要重新打开终端。


2. Go 版本仍然是旧版本

先执行:

which go

Windows 可以执行:

where go

如果系统中存在多个 Go 安装路径,可能调用了旧版本。

需要删除旧版本,或者调整 PATH 中目录的顺序。


3. 下载第三方依赖失败

可以先检查网络,然后查看代理配置:

go env GOPROXY

重新设置模块代理:

go env -w GOPROXY=https://proxy.golang.org,direct

设置完成后执行:

go clean -modcache
go mod tidy

4. 提示找不到 go.mod

错误类似:

go: go.mod file not found

说明当前目录还没有初始化 Go Modules。

进入项目目录后执行:

go mod init 项目名称

5. Linux 没有执行权限

如果自行下载了可执行程序,可能需要添加权限:

chmod +x 程序名称

然后运行:

./程序名称

不过通过 go build 生成的程序一般会自动具有执行权限。


十三、是否需要配置 GOPATH?

现在的新项目基本都使用 Go Modules,因此通常不需要手动配置 GOPATH,也不要求项目放在 GOPATH 的 src 目录中。

你可以把项目放在任意位置,例如:

Windows:

D:\code\go-projects

macOS:

~/Code/go-projects

Linux:

~/projects/go

只要进入项目目录执行:

go mod init 项目名称

就可以正常开发。

对于初学者来说,不建议照搬一些旧教程中的 GOPATH 项目结构,以免增加不必要的理解成本。


十四、推荐的项目目录

学习阶段可以统一创建一个 Go 项目目录。

例如:

go-projects
├── hello-go
├── calculator
├── student-manager
└── web-demo

每个项目单独初始化 Go Modules:

go mod init hello-go

这样不同项目之间互不干扰,也更符合现代 Go 项目的管理方式。


十五、本章小结

本篇完成了 Windows、macOS 和 Linux 三个平台的 Go 开发环境安装。

我们主要学习了:

  • 下载并安装 Go

  • 配置系统 PATH

  • 使用 go version 验证环境

  • 使用 go env 查看配置

  • 理解 GOROOT、GOPATH 和 GOPROXY

  • 使用 Go Modules 初始化项目

  • 运行和编译第一个 Go 程序

  • 排查常见环境问题

在继续学习之前,请确保以下命令可以正常运行:

go version
go env
go run .
go build

只要这些命令没有报错,就说明 Go 基础开发环境已经准备完成。


本章练习

  1. 在自己的电脑上安装 Go。
  2. 执行 go version 查看版本信息。
  3. 执行 go env 查看环境配置。
  4. 找出当前系统的 GOROOTGOPATH
  5. 创建一个名为 hello-go 的项目。
  6. 使用 go mod init hello-go 初始化项目。
  7. 编写 main.go 并输出一句自定义内容。
  8. 分别使用 go run .go build 运行程序。
  9. 查看编译后生成的可执行文件。
  10. 尝试修改 GOPROXY,并重新查看配置。

下一篇预告

《配置 GoLand 与 VS Code 开发环境》

下一篇将详细介绍 GoLand 和 VS Code 的安装与配置,包括 Go SDK、官方插件、gopls、代码自动补全、保存时格式化、断点调试和常用开发设置,帮助大家搭建更加高效的 Go 编程环境。