Go 安装和卸载

Table of Contents

1. 安装 Go

官方下载地址:https://go.dev/dl/

1.1. Linux, macOS, and FreeBSD tarballs

wget https://go.dev/dl/go1.18.3.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.18.3.linux-amd64.tar.gz

/usr/local/go/bin 添加到系统 PATH 环境变量,另外,默认的工作目录是 $HOME/go ,如果是不同的目录需要 设置一下 GOPATH 环境变量go get 安装的二进制包会放到 $HOME/go/bin 下面。所以,汇总后 .bashrc/.zshrc 中添加路径:

export PATH=$PATH:/usr/local/go/bin:$(go env GOPATH)/bin

1.2. 检测是否安装成功

在工作目录下创建 src/hello 目录,然后创建 hello.go

package main

import "fmt"

func main() {
    fmt.Printf("hello, world\n")
}

go run hello.go 看到 hello, world 表示安装成功。

注意 如果存在旧版本的 Go 需要先卸载才行。

如果运行报错 Could not Import C(cgo preprocessing) 这种错误,可能是主机没有安装 gcc 导致。

2. 卸载

  1. 删除 /usr/local/go 目录
  2. 编辑 /etc/profile 或者 $HOME/profile 移除 PATH 环境变量中的 go bin 路径
  3. 删除工作目录

3. 开发环境

4. 跨平台编译

1.5 版本之后,Go 支持跨平台编译(碉堡的一个功能),在编译之前指定 $GOOS$GOARCH 两个环境变量即可。这两个环境变量分别表示的目标的操作系统和编译体系架构的名称。常用的值:

  • GOOS: android darwin freebsd linux windows
  • GOARCH: arm amd64 386

完整的可选值在 Optional environment variables

比如在 MacOS 上编译 CentOS7 下的二进制包: GOOS=linux GOARCH=amd64 go build main

相关的 Stackoverflow 帖子:All possible GOOS value? 中说明在 Go 1.7 之后,可以使用 go tool dist list -json 来显示可选的值(不加 -json 参数将显示为文本)。

First created: 2017-12-07 09:41:24
Last updated: 2022-12-15 Thu 16:06
Power by Emacs 29.0.91 (Org mode 9.6.6)