• Mac/Linux 安装 Go 详解


    Mac 安装 Go

    brew 查看有哪些 golang版本可用 :

    $ brew search go
    ==> Formulae
    algol68g                       go-jira                        gofabric8                      goolabs                        gx-go                          mongodb@3.6
    arangodb                       go-statik                      goffice                        goose                          Hugo                           mongoose
    argon2                         go@1.4                         gollum                         gopass                         jfrog-cli-go                   pango
    bogofilter                     go@1.8                         golo                           gor                            jpegoptim                      pangomm
    cargo-completion               go@1.9                         gom                            goreleaser                     lego                           percona-server-mongodb
    certigo                        goaccess                       gomplate                       gost                           lgogdownloader                 pygobject
    cgoban                         goad                           goocanvas                      gosu                           libgosu                        pygobject3
    clingo                         gobby                          goofys                         gotags                         mongo-c-driver                 ringojs
    django-completion              gobject-introspection          google-authenticator-libpam    goto                           mongo-cxx-driver               spaceinvaders-go
    forego                         gobuster                       google-benchmark               gource                         mongo-orchestration            spigot
    fuego                          gocr                           google-java-format             govendor                       mongodb                        svgo
    gnu-go                         gocryptfs                      google-sparsehash              gowsdl                         mongodb@3.0                    wego
    go                             godep                          google-sql-tool                gox                            mongodb@3.2                    wireguard-go
    go-bindata                     goenv                          googler                        gst-plugins-good               mongodb@3.4  
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    brew 安装新版本的go : 使用 brew 方式安装速度比较慢 (不推荐)

    $ brew install go@1.9
    Updating Homebrew...
    ==> Downloading https://homebrew.bintray.com/bottles/go@1.9-1.9.7.high_sierra.bottle.tar.gz
    ######################################################################## 100.0%
    ==> Pouring go@1.9-1.9.7.high_sierra.bottle.tar.gz
    ==> Caveats
    A valid GOPATH is required to use the `go get` command.
    If $GOPATH is not specified, $HOME/go will be used by default:
      https://golang.org/doc/code.html#GOPATH
    
    You may wish to add the GOROOT-based install location to your PATH:
      export PATH=$PATH:/usr/local/opt/go@1.9/libexec/bin
    
    This formula is keg-only, which means it was not symlinked into /usr/local,
    because this is an alternate version of another formula.
    
    If you need to have this software first in your PATH run:
      echo 'export PATH="/usr/local/opt/go@1.9/bin:$PATH"' >> ~/.bash_profile
    
    ==> Summary
      /usr/local/Cellar/go@1.9/1.9.7: 7,668 files, 294.2MB
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    升级go版本 :

    $ brew upgrade go
    
    • 1

    官网下载 (推荐) : https://golang.org/dl/ https://studygolang.com/dl (国内下载速度比较快) https://gomirrors.org/ https://golang.google.cn/dl/ (推荐)
    Golang下载选择合适的版本 (Mac可以下载 go1.17.3.darwin-amd64.tar.gz),直接点击下载即可,下载完成根据指示完成安装

    配置 golang 环境变量 : PROXY 推荐使用 https://goproxy.io 或 https://goproxy.cn

    # vi ~/.bash_profile# vi ~/.zshrc
    
    # GOLANG_HOME
    export GOLANG_HOME=/Users/chenshun131/Desktop/AllMyFile/Tool/go/go
    export PATH=$PATH:$GOLANG_HOME/bin
    # 配置 GOPROXY 环境变量,加速代码访问速度
    export GOPROXY=https://goproxy.cn,direct
    # 依赖包下载地址
    export GOPATH=$GOLANG_HOME
    
    # source ~/.bash_profile# source ~/.zshrc
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    $GOROOT : 表示 Go 在电脑上的安装位置,它的值一般都是 $HOME/go,当然,也可以安装在别的地方
    $GOARCH : 表示目标机器的处理器架构,它的值可以是 386、amd64 或 arm
    $GOOS : 表示目标机器的操作系统,它的值可以是 darwin、freebsd、linux 或 windows
    $GOBIN : 表示编译器和链接器的安装位置,默认是 $GOROOT/bin,如果使用的是 Go 1.0.3 及以后的版本,一般情况下可以将它的值设置为空,Go 将会使用前面提到的默认值
    $GOPATH : 代码存放的目录,默认 $HOME/go。新建go的代码目录,下面建立bin pkg src。其中,bin存放编译后的可执行文件;pkg存放编译后的包文件;src存放项目源文件。一般,bin和pkg目录可以不创建,go命令会自动创建 (如 go install),只需要创建src目录即可

    go常有的代理有 :

    export GOPROXY=https://goproxy.cn,direct
    export GOPROXY=https://goproxy.io,direct
    export GOPROXY=https://mirrors.aliyun.com/goproxy/
    
    • 1
    • 2
    • 3

    可以执行下面的命令修改GOPROXY :

    # go env -w GO111MODULE=on
    # go env -w GOPROXY=https://goproxy.cn,direct
    
    • 1
    • 2

    Linux 安装 Go

    下载地址 : https://studygolang.com/dl

    上传并解压 go :

    # rz    # 上传 go1.18.4.linux-amd64.tar.gz
    # tar -zxvf go1.18.4.linux-amd64.tar.gz -C /opt/module/
    
    • 1
    • 2

    配置环境变量 :

    # vi /etc/profile
    ...
    ## GO
    export GOROOT=/opt/modules/go
    export PATH=$PATH:$GOROOT/bin
    # 依赖包下载地址
    export GOPATH=$HOME/gopath
    
    # source /etc/profile
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    开启go module :

    # go env -w GO111MODULE=on
    # go env -w GOPROXY=https://goproxy.cn,direct
    
    • 1
    • 2

    通过查看 go 版本检测是否安装成功 :

    # go version
    go version go1.18.4 linux/amd64
    
    • 1
    • 2

    GoLang 配置优化

    修改 Preferences -> Tools -> File Watchers 中增加 go fmt 和 goimports
    Golang

  • 相关阅读:
    linux命令行与shell脚本大全——学习笔记(1-4章)
    Windows10系统开启SNMP服务
    python学习12--爬虫
    vue目录树的封装
    使用Unity的Input.GetAxis(““)控制物体移动、旋转
    ROS2专题【02】:Ubuntu上安装ROS2
    数据分析师如何用SQL解决业务问题?
    基于微信小程序的校园疫情防控小程序源码
    在python里如何实现switch函数的功能
    PCIE下载的驱动安装
  • 原文地址:https://blog.csdn.net/chenshun123/article/details/126190963