Go正在打印xgcc版本,但未打印已安装版本

On go version : It prints

go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64

My installed version is the latest one and i.e 1.4.2

which got installed from the tar version : go1.4.2.linux-amd64.tar.gz

GO Environmental variables looks exactly like this:

GOARCH="amd64"
GOBIN="/home/user/coding/golang/gocnew/goc/bin"
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/user/coding/golang/gocnew/goc"
GORACE=""
GOROOT="/home/user/go"
GOTOOLDIR="/home/user/go/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"    

I expect go version to be printed as 1.4.2, so how that can be achieved?

Looks like you have two versions of Go installed. One from ubuntu package manager and one you installed from source tar.

To confirm kindly try to remove gccgo :

sudo apt-get remove gccgo

I got the same issue and i fixed it by this way: Access to go folder: /usr/local/go (The installation folder of go) Execute these commands:

Added by Go Path

echo 'export GOROOT=/usr/local/go' >> ~/.bashrc

echo 'export GOPATH=$HOME/go' >> ~/.bashrc

echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> ~/.bashrc

And then go to the source folder and check go version: go version go1.12.2 linux/amd64 it will be displayed the same version in go folder and you can work with go commands.