Thursday 8 August 2019

Go installation (friendly user guide with detailed steps)

https://tecadmin.net/install-go-on-ubuntu/

Step 1 – Install Go on Ubuntu

Login to your Ubuntu system using ssh and upgrade to apply latest security updates there.
sudo apt-get update
sudo apt-get -y upgrade
Now download the Go language binary archive file using following link. To find and download latest version available or 32 bit version go to official download page.
wget https://dl.google.com/go/go1.12.7.linux-amd64.tar.gz
Now extract the downloaded archive and install it to the desired location on the system. For this tutorial, I am installing it under /usr/local directory. You can also put this under the home directory (for shared hosting) or other location.
Verify downloaded file is what it is 
openssl sha256 go1.12.7.linux-amd64.tar.gz
Check if the hash aligns with Offical website
sha256 is a has function that takes the Go binary and produces a hash code output
if malware changed Go binary, the hash will be different
sudo tar -xvf go1.12.7.linux-amd64.tar.gz
sudo mv go /usr/local

Step 2 – Setup Go Environment

Now you need to setup Go language environment variables for your project. Commonly you need to set 3 environment variables as GOROOTGOPATH and PATH.
GOROOT is the location where Go package is installed on your system.
export GOROOT="/usr/local/go"
GOPATH is the location of your work directory. For example my project directory is ~/Projects/Proj1 .
export GOPATH="$HOME/Projects/Proj1"
Now set the PATH variable to access go binary system wide.
If we type GO something, it will look for this path

export PATH="$GOPATH/bin:$GOROOT/bin:$PATH"
All the above environment will be set for your current session only. To make it permanent add above commands in ~/.profile file or ~/.bash_profile
once it is set, rerun by source .bash_profile or .profile(They are executed when user logs in, need re execute)

Step 3 – Verify Installation

At this step, you have successfully installed and configured go language on your system. First, use the following command to check the Go version.
go version

go version go1.12.7 linux/amd64
Now also verify all configured environment variables using following command.
go env

GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/root/Projects/Proj1"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
...
...

No comments:

Post a Comment