Here is a little memento for those who wish to install Go (1.9) on their Ubuntu machine (17.10). As a reminder, Go is a compiled language, meaning no need to install Go on the machine where your application will run.
Update repositories and security patches, just in case:
sudo apt-get update
sudo apt-get -y upgrade
Download and install Go:
sudo curl -O https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz # Download archive. Change the archive's name if you need another version of Go or another system architecture
sudo tar -xvf go1.9.linux-amd64.tar.gz # Extract archive
sudo mv go /usr/local # Move binaries to /usr/local
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile # Update our bash profile so Go is in the PATH
source ~/.profile # Update profile
Go is now installed ! Create your project and initialize environment variables:
mkdir $HOME/my_project
mkdir $HOME/my_project/src
mkdir $HOME/my_project/src/my_app
export GOPATH=$HOME/my_project
Then create your app:
vim $HOME/my_project/src/my_app/my_app.go
And put the following code in it (display a mere Hello World):
package main
import "fmt"
func main() {
fmt.Printf("hello world\n")
}
Compile app:
go install my_app
If everything went well, an executable has been created inside a new bin
folder. Run it:
$HOME/my_project/bin/my_app
Finally you should get:
hello world
In order to understand the differences between go install
, go build
, and go run
read this. And if you cannot or do not want to install Go on your machine, have a look at this Docker image.
Enjoy !