安装/更新go到最新的1.13.4版本

卸载旧版本

查看安装的包和版本

sudo apt list --installed | grep golang

我的环境是这样的,这是ubuntu19通过apt安装到的最新版的go,但是我想要的是1.13.

golang-1.12-go/eoan,now 1.12.10-1ubuntu1 amd64 [installed,automatic]
golang-1.12-race-detector-runtime/eoan,now 0.0+svn332029-0ubuntu1 amd64 [installed,automatic]
golang-1.12-src/eoan,now 1.12.10-1ubuntu1 amd64 [installed,automatic]
golang-go/eoan,now 2:1.12~1ubuntu1 amd64 [installed]
golang-race-detector-runtime/eoan,now 2:1.12~1ubuntu1 amd64 [installed,automatic]
golang-src/eoan,now 2:1.12~1ubuntu1 amd64 [installed,automatic]

卸载安装的go

sudo apt remove golang-1.12-go
sudo apt autoremove

安装新版本

下载最新版

想要其他版本请直接去官网下载页面去下载,当然,有墙,国内一般进不去。但是可以在ubuntu里面直接wget下载到。或者直接直接去官方镜像站下载:https://golang.google.cn/dl/

sudo wget https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz

安装到/usr/local下面

sudo tar -xvf go1.13.4.linux-amd64.tar.gz
sudo mv go /usr/local

设置环境变量

环境变量需要设置的是GOROOTGOPATHPATH

GOROOT是安装Go软件包的位置,GOPATH是工作目录的位置

要设置全局环境变量就把下面代码写入/etc/profile或者/etc/bashrc,用户变量就写入~/.profile,或者~/.bashrc.

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

Linux环境变量设置/etc/profile/etc/bashrc~/.profile~/.bashrc区别

登入系统读取步骤:

当登入系统时候获得一个shell进程时,其读取环境设定档有三步 :

  1. 首先读入的是全局环境变量设定档/etc/profile,然后根据其内容读取额外的设定的文档,如 /etc/profile.d/etc/inputrc
  2. 然后根据不同使用者帐号,去其家目录读取~/.bash_profile,如果这读取不了就读取> ~/.bash_login,这个也读取不了才会读取~/.profile,这三个文档设定基本上是一样的,读取有优先关系
  3. 然后在根据用户帐号读取~/.bashrc

/etc/*~/.*区别:

/etc/profile/etc/bashrc 是系统全局环境变量设定
~/.profile~/.bashrc是用户家目录下的私有环境变量设定

~/.profile~/.bashrc的区别:

都具有个性化定制功能
~/.profile可以设定本用户专有的路径,环境变量等,它只在登入的时候执行一次
~/.bashrc也是某用户专有设定文档,可以设定路径,命令别名,每次shell script的执行都会使用它一次

验证

验证版本

go version
go version go1.13.4 linux/amd64

查看环境变量。

go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/root/Projects/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build746018860=/tmp/go-build -gno-record-gcc-switches"

完成。

相关文章

发表回复

您的电子邮箱地址不会被公开。