Linux 安装 Go 语言(最新版) – wiki基地

在 Linux 上安装最新版 Go 语言:详尽指南

Go(又称 Golang)是由 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。它以其简洁的语法、高效的性能和强大的并发特性而受到开发者的青睐。本文将详细介绍如何在 Linux 系统上安装最新版本的 Go 语言,并配置好相应的开发环境。

1. 准备工作

在开始安装 Go 之前,我们需要确保 Linux 系统满足一些基本要求:

  • 操作系统:本文以主流的 Linux 发行版(如 Ubuntu、Debian、CentOS、Fedora 等)为例进行说明。不同发行版的包管理器和具体命令可能略有差异,但总体安装思路是一致的。
  • 架构:Go 支持多种硬件架构(如 amd64、arm64、armv6l 等)。请确认你的 Linux 系统的架构,以便下载对应的 Go 安装包。你可以使用 uname -m 命令查看系统架构。
  • 网络连接:安装过程中需要从 Go 官网下载安装包,因此需要确保你的 Linux 系统能够访问互联网。
  • 权限:安装过程可能需要管理员权限(sudo)。

2. 下载 Go 安装包

Go 官方提供了预编译的二进制安装包,我们可以直接从官网下载并安装。

  1. 访问 Go 官网下载页面

    打开浏览器,访问 Go 官方下载页面:https://golang.org/dl/

  2. 选择合适的安装包

    在下载页面,你会看到针对不同操作系统和架构的 Go 安装包列表。找到 “Linux” 部分,根据你的系统架构选择对应的安装包。通常情况下,64 位系统选择 linux-amd64,32 位系统选择 linux-386,ARM 架构选择相应的 linux-arm64linux-armv6l

    例如,对于 64 位 x86 架构的 Linux 系统,选择 go1.XX.X.linux-amd64.tar.gz(其中 1.XX.X 是 Go 的版本号,请选择最新的稳定版本)。

  3. 下载安装包

    点击选中的安装包链接,开始下载。你也可以使用命令行工具 wgetcurl 下载:

    “`bash

    使用 wget

    wget https://dl.google.com/go/go1.XX.X.linux-amd64.tar.gz

    使用 curl

    curl -O https://dl.google.com/go/go1.XX.X.linux-amd64.tar.gz
    “`

    请将 https://dl.google.com/go/go1.XX.X.linux-amd64.tar.gz 替换为你实际要下载的安装包链接。

3. 安装 Go

下载完成后,我们可以开始安装 Go。

  1. 解压安装包

    将下载的 .tar.gz 安装包解压到你希望安装 Go 的目录。通常,推荐将 Go 安装到 /usr/local 目录下:

    bash
    sudo tar -C /usr/local -xzf go1.XX.X.linux-amd64.tar.gz

    这个命令会将 Go 解压到 /usr/local/go 目录。

  2. 验证安装

    解压完成后,/usr/local/go/bin 目录中应该包含 Go 的可执行文件。可以运行以下命令检查是否成功解压:

    bash
    /usr/local/go/bin/go version

    如果输出 Go 的版本信息,则说明解压成功。

4. 配置环境变量

为了方便使用 Go 命令,我们需要配置一些环境变量。

  1. 打开 shell 配置文件

    Go 需要设置 GOROOTGOPATHPATH 这三个环境变量。你可以根据你使用的 shell(如 Bash、Zsh 等)打开相应的配置文件进行编辑:

    • Bash~/.bashrc~/.bash_profile
    • Zsh~/.zshrc

    使用你喜欢的文本编辑器打开配置文件,例如:

    bash
    nano ~/.bashrc # 或者 vim ~/.bashrc, gedit ~/.bashrc 等

  2. 添加环境变量

    在配置文件末尾添加以下内容:

    bash
    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

    • GOROOT:Go 的安装路径(即 /usr/local/go)。
    • GOPATH:Go 的工作目录,用于存放 Go 项目的源代码、依赖包和编译后的可执行文件。你可以根据自己的需要设置 GOPATH,这里设置为 $HOME/go(即用户主目录下的 go 文件夹)。
    • PATH:将 Go 的可执行文件路径($GOROOT/bin)和 GOPATH 下的 bin 目录($GOPATH/bin)添加到 PATH 环境变量中,这样就可以在任何位置直接运行 Go 命令。
  3. 使配置生效

    保存并关闭配置文件后,需要重新加载配置文件或打开一个新的终端窗口,使环境变量生效。

    • 对于 Bash,可以运行:

      bash
      source ~/.bashrc # 或者 source ~/.bash_profile

    • 对于 Zsh,可以运行:

      bash
      source ~/.zshrc

  4. 验证配置

    配置完成后,打开一个新的命令行窗口,并执行以下命令来验证 Go 环境是否配置正确:

    bash
    go version
    go env

    • go version:应该输出你安装的 Go 的版本号。
    • go env:应该输出 Go 的环境变量配置信息,检查 GOROOTGOPATHPATH 是否设置正确。

5. 测试 Go 安装

为了确保 Go 安装成功并能正常工作,我们可以创建一个简单的 Go 程序进行测试。

  1. 创建工作目录

    GOPATH 指定的目录下(例如 $HOME/go),创建 srcpkgbin 三个子目录:

    bash
    mkdir -p $HOME/go/{src,pkg,bin}

    这三个目录的作用分别是:

    • src:存放 Go 项目的源代码文件(.go 文件)。
    • pkg:存放编译后的包文件(.a 文件)。
    • bin:存放编译后的可执行文件。
  2. 创建 Go 源文件

    $HOME/go/src 目录下创建一个新的目录,例如 hello,然后在 hello 目录下创建一个名为 hello.go 的文件:

    bash
    mkdir $HOME/go/src/hello
    cd $HOME/go/src/hello
    nano hello.go

    hello.go 文件中输入以下代码:

    “`go
    package main

    import “fmt”

    func main() {
    fmt.Println(“Hello, Go!”)
    }
    “`

  3. 编译并运行程序

    hello.go 文件所在的目录下,运行以下命令编译并运行程序:

    bash
    go run hello.go

    或者先编译,再运行

    bash
    go build
    ./hello

    如果一切正常,你应该会在终端看到输出 “Hello, Go!”。

    go run 命令会直接编译并运行程序,而 go build 命令会生成一个名为 hello 的可执行文件(在当前目录下)。

6. 使用 Go Modules (推荐)

从 Go 1.11 版本开始,Go 引入了 Modules(模块)机制,用于管理项目依赖。Modules 可以替代传统的 GOPATH 方式,使项目依赖管理更加灵活和方便。

  1. 启用 Modules

    如果你使用的是 Go 1.11 或更高版本,Modules 默认是启用的。你可以通过设置环境变量 GO111MODULE 来控制 Modules 的行为:

    • GO111MODULE=on:强制启用 Modules,即使项目不在 GOPATH 目录下。
    • GO111MODULE=off:禁用 Modules,使用传统的 GOPATH 方式。
    • GO111MODULE=auto:自动模式,如果项目在 GOPATH 目录下,则使用 GOPATH 方式;否则,启用 Modules。

    通常情况下,建议将 GO111MODULE 设置为 on 或保持默认的 auto

  2. 初始化 Modules

    在你的项目目录下(例如 $HOME/go/src/hello),运行以下命令初始化 Modules:

    bash
    go mod init hello

    该命令会在项目目录中创建一个go.mod文件,用于管理项目对外部模块的依赖。go.mod中将记录下module 的路径(例子中是hello

  3. 添加依赖

    如果你的项目需要使用外部包,可以使用 go get 命令添加依赖:

    bash
    go get <package_path>

    例如,要添加 github.com/sirupsen/logrus 这个日志包:

    bash
    go get github.com/sirupsen/logrus

    go get 命令会自动下载并安装指定的包及其依赖,并将依赖信息添加到 go.mod 文件中。同时,还会生成一个名为 go.sum 的文件,用于记录依赖包的校验和,确保依赖的完整性和安全性。

  4. 构建和运行

    使用 Modules 后,你可以直接在项目目录下使用 go buildgo rungo test 等命令构建、运行和测试项目,Go 会自动处理依赖关系。

    bash
    go build # 构建项目
    go run . # 运行项目
    go test # 运行测试

7. 其他安装方式 (了解)

除了使用官方提供的二进制安装包外,还有一些其他的安装方式:

  • 使用包管理器

    某些 Linux 发行版提供了 Go 的软件包,你可以使用系统的包管理器(如 aptyumdnf 等)安装 Go。但是,通过包管理器安装的 Go 版本可能不是最新的。

    • Ubuntu/Debian

      bash
      sudo apt update
      sudo apt install golang-go

    • CentOS/Fedora

      bash
      sudo yum install go # CentOS
      sudo dnf install go # Fedora

  • 使用第三方工具

    有一些第三方工具可以帮助你更方便地安装和管理多个 Go 版本,例如:

    这些工具可以让你轻松地切换不同的 Go 版本,并为不同的项目设置不同的 Go 环境。

8. Go 语言开发工具

安装好 Go 环境后,你可以选择一个合适的集成开发环境(IDE)或文本编辑器来编写 Go 代码。以下是一些常用的 Go 开发工具:

  • Visual Studio Code (VS Code):一款轻量级、跨平台的代码编辑器,通过安装 Go 扩展可以提供强大的 Go 开发支持。
  • GoLand:JetBrains 出品的专业的 Go IDE,功能强大,但需要付费。
  • LiteIDE:一款专门为 Go 语言开发的轻量级 IDE。
  • Sublime Text:一款流行的文本编辑器,通过安装 GoSublime 插件可以提供 Go 代码高亮、自动补全等功能。
  • Vim/Emacs:经典的文本编辑器,通过安装相应的插件也可以提供 Go 开发支持。

9. 总结

本文详细介绍了在 Linux 系统上安装最新版 Go 语言的步骤,包括下载安装包、解压安装、配置环境变量、测试安装、使用 Modules 管理依赖等。同时,还介绍了其他安装方式和常用的 Go 开发工具。希望本文能帮助你顺利地在 Linux 上搭建起 Go 语言开发环境,并开始你的 Go 编程之旅。

无论你选择哪种方式安装 Go,最重要的是理解 GOROOTGOPATHPATH 这三个环境变量的作用,以及 Modules 的基本使用方法。掌握这些基础知识,你就可以在 Go 的世界中自由探索了。

滚动至顶部