Question or issue on macOS:
Pretty much the title. I downloaded/installed Go 1.8 for OS X, but when I go
$ go version go version go1.7.5 darwin/amd64
My .bashrc look like the following
# some exports omitted NPM_PACKAGES=/Users//.npm-packages NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH" export PATH=~/Library/Python/3.4/bin:$PATH export GOPATH=$HOME/Go export PATH=$PATH:/usr/local/go/bin
My workspace is in a directory called “Go” in my home folder.
What I have checked so far:
I believe the culprit might be a wrong configuration in the .bashrc file above, as only the terminal is stuck on the old version, but I can’t figure out what is wrong with it.
How to solve this problem?
Solution no. 1:
You obviously have an old version of Go installed, else you couldn’t see
go version go1.7.5 darwin/amd64 as the output of
IDEs might have more advanced method of detecting Go installations other that simply scanning
GOROOT (and that’s why your IDE found and suggested the newer Go 1.8).
which go, and you’ll see where your old Go resides. Remove it (and references to it).
Note that in your
.bashrc you’re appending the proper Go
bin folder to the end of
Which means if
PATH contains the
bin folder of the old Go installation (very likely), that is used to execute the
Solution no. 2:
I had the same issue. Even after installing golang 1.10 on mac through download from golang website, mac terminal still showed 1.7 version.
Updating golang through homebrew fixed my issue.
brew update brew upgrade golang
Solution no. 3:
In my case, I had to replace binary files manually after re-installation.
cp /usr/local/go/bin/* /usr/local/bin/
Solution no. 4:
I’ve resolved my problem by moving link to go binary from installation folder to
Step by step:
find go binary:
$which go /usr/bin/go
ln -s /usr/local/go/bin/go go ln -s /usr/local/go/bin/godoc godoc ln -s /usr/local/go/bin/gofmt gofmt
copy those 3 symlinks to