How to Install Go on Ubuntu 18.04

Updated 

3 min read

Image by Renee French

Go is a modern open-source programming language created by Google. Many popular applications, including Kubernetes, Docker, and Grafana are written in Go.

This tutorial will guide you through the steps of downloading and installing Go on an Ubuntu 18.04 machine.

Prerequisites

Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges.

Installing Go on Ubuntu

Follow the steps below to install Go on Ubuntu 18.04:

1. Downloading the Go tarball

At the time of writing this article, the latest stable version of Go is version 1.13. Before downloading the tarball, visit the official Go downloads page and check if there is a new version available.

To download the Go binary, you can use either wget or curl:

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

2. Verifying the Go tarball

To verify the tarball checksum you can use the sha256sum command:

sha256sum go1.13.linux-amd64.tar.gz

The output will look something like this:

68a2297eb099d1a76097905a2ce334e3155004ec08cdea85f24527be3c48e856  go1.13.linux-amd64.tar.gz

Make sure the hash printed from the command above matches the one from the downloads page.

3. Extracting the Go tarball

Use tar to extract the tarball to the /usr/local directory:

sudo tar -C /usr/local -xzf go1.13.linux-amd64.tar.gz

4. Adjusting the Path Variable

In order for the system to know where to find the Go executable binaries, we need to adjust the $PATH environment variable. We can do this by appending the following line to the /etc/profile file (for a system-wide installation) or the $HOME/.profile file (for a current user installation):

~/.profile
export PATH=$PATH:/usr/local/go/bin

Save the file, and load the new PATH environment variable into the current shell session:

source ~/.profile

5. Verifying the Go Installation

Verify the installation by printing the Go version

go version

The output should look something like this:

go version go1.13 linux/amd64

Getting Started with Go

We’ll set up a workspace and build a simple “Hello world” program that will simply print the classic “hello world” message.

  1. By default the workspace directory is set to $HOME/go, to create it, type:

    mkdir ~/go
  2. Inside the workspace create a new directory src/hello

    mkdir -p ~/go/src/hello

    In that directory create a file named hello.go with the following content:

    ~/go/src/hello/hello.go
    package main
    
    import "fmt"
    
    func main() {
        fmt.Printf("Hello, World\n")
    }

    You can learn more about Go workspace directory hierarchy here

  3. To build the file, navigate to the ~/go/src/hello directory and run the go build command:

    cd ~/go/src/hello
    go build

    The command above will build an executable named hello.

  4. You can run the executable by simply executing the command below:

    ./hello

    The output should look something like this:

    Hello, World

Conclusion

Now that you have downloaded and installed Go your Ubuntu system, you can start developing your Go projects.

If you hit a problem or have feedback, leave a comment below.