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 的世界中自由探索了。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部