如何在macOS使用brew安装Golang_Golang Homebrew安装与升级方法

12次阅读

Homebrew 是安装 go 的前提,未安装需先执行安装命令;安装后必须运行 brew –version 和 brew update 验证并更新索引;brew install go 后需手动 source ~/.zshrc 使 PATH 生效;升级时须先 brew update 再 brew upgrade go,并确认 go version 已更新。

如何在macOS使用brew安装Golang_Golang Homebrew安装与升级方法

确认 Homebrew 是否已就位

Homebrew 是整个流程的前提,不是可选项。很多用户卡在 brew install go 报错“command not found”,其实根本没装 brew。

  • 运行 which brew —— 如果返回空,说明未安装
  • 直接执行安装命令:
    /bin/bash -c "$(curl -fssl https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • 安装完成后,务必运行 brew --version 验证;再顺手执行 brew update,避免因索引陈旧导致后续安装失败

用 brew 安装 Go 并让 go 命令真正可用

执行 brew install go 很快,但很多人装完发现 go version 仍报 command not found —— 这不是安装失败,而是 shell 没加载新 PATH。

  • Homebrew 会把 go 二进制放在 /opt/homebrew/bin/goapple Silicon)或 /usr/local/bin/go(Intel),并尝试写入你的 shell 配置文件(如 ~/.zshrc
  • 但它不会自动重载配置。你必须手动执行:
    source ~/.zshrc

    macOS Catalina 及以后默认用 zsh)

  • 验证是否生效:
    go version
    which go

    ——两者都应有输出,且 which go 的路径需匹配 Homebrew 的安装位置

升级 Go 版本:别只 brew upgrade,先看清楚当前状态

brew upgrade go 看似简单,但容易忽略两个关键事实:它只升级到 Homebrew 仓库里的最新稳定版(未必是 Go 官方最新版),且不保留旧版本。

  • 升级前建议先查清现状:
    brew info go
    brew outdated
  • 执行升级:
    brew update && brew upgrade go

    brew update 必须前置,否则可能跳过更新)

  • 升级后再次运行 go version,确认输出的版本号已变更;如果没变,大概率是 shell 缓存或 PATH 未刷新,重新 source ~/.zshrc
  • 注意:Homebrew 默认不支持多版本共存。若需长期保留多个 Go 版本(比如维护老项目),应改用 g 工具brew install g),而非依赖 brew link 切换 —— 后者在较新 Homebrew 中已被弃用,且易与 go@1.x 公式冲突

常见错误现象与对应检查点

以下问题高频出现,几乎都和环境变量或缓存有关,和 Go 本身无关:

立即学习go语言免费学习笔记(深入)”;

  • “command not found: go”:检查 which brewbrew --versionecho $PATH 是否含 /opt/homebrew/bin/usr/local/bin → 最后确认是否执行了 source ~/.zshrc
  • “go: command found but version unchanged after upgrade”:极可能是终端未重启或配置未重载;也可能是之前手动设过 PATH 覆盖了 Homebrew 的路径,检查 ~/.zshrc 里是否有硬编码/usr/local/go/bin
  • “go run hello.go 报错 cannot find package”:这不是安装问题,是 Go Modules 未初始化。进入项目目录后先运行 go mod init example.com/hello 再试

最关键的一步永远是:装完或升级完,别急着写代码,先关掉终端再新开一个,或者至少执行一次 source ~/.zshrc。这行命令看起来最无害,却是 80% “装了却用不了” 问题的解药。

text=ZqhQzanResources