Go/Installing: Difference between revisions
From charlesreid1
(→Paths) |
(→Paths) |
||
| Line 57: | Line 57: | ||
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin | export PATH=$PATH:$GOROOT/bin:$GOPATH/bin | ||
</pre> | </pre> | ||
=Testing= | |||
Now that Go is installed and the paths are set for your server, you can test to ensure that Go is working as expected. | |||
Create a new directory for your Go workspace, which is where Go will build its files: | |||
mkdir $HOME/work | |||
Then, create a directory hierarchy in this folder in order for you to create your test program file. We’ll use the directory my_project as an example. | |||
mkdir -p work/src/my_project/hello | |||
Next, you can create a traditional "Hello World" Go file. | |||
nano ~/work/src/my_project/hello/hello.go | |||
Inside your editor, paste the code below, which uses the main Go packages, imports the formatted IO content component, and sets a new function to print "Hello, World" when run. | |||
hello.go | |||
<pre> | |||
package main | |||
import "fmt" | |||
func main() { | |||
fmt.Printf("Hello, World!\n") | |||
} | |||
</pre> | |||
This program will print "Hello, World!" if it successfully runs, which will indicate that Go programs are compiling correctly. Save and close the file, then compile it by invoking the Go command install: | |||
Revision as of 04:26, 7 December 2018
Installing Go
Linux
Visit the Go downloads page: https://golang.org/dl
Get the URL for the latest version of Go
Download go:
curl -O https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
Verify checksum:
sha256sum go*.tar.gz
Now you're ready to install Go:
tar xvf go*.tar.gz sudo chown -R root:root ./go sudo mv go /usr/local
Mac
brew install go brew upgrade go
Goenv
Following the successful model of pyenv, you can use goenv to set up and manage various side-by-side versions of Go.
Link: https://github.com/syndbg/goenv
Paths
Edit your .profile to make the following changes to your environment variables:
- GOROOT - (by default, this is /usr/local, only change if you are using a different location) the location of your Go tree
- GOPATH - this is a list of paths in which Go code, packages, objects, and executables are stored
- PATH - update PATH to include the binary folder of both GOROOT and GOPATH
For example, if Go were installed to the home directory in go/ and work/, these lines would be added to the user's .profile file:
export GOROOT=$HOME/go export GOPATH=$HOME/work export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
Testing
Now that Go is installed and the paths are set for your server, you can test to ensure that Go is working as expected.
Create a new directory for your Go workspace, which is where Go will build its files:
mkdir $HOME/work
Then, create a directory hierarchy in this folder in order for you to create your test program file. We’ll use the directory my_project as an example.
mkdir -p work/src/my_project/hello
Next, you can create a traditional "Hello World" Go file.
nano ~/work/src/my_project/hello/hello.go
Inside your editor, paste the code below, which uses the main Go packages, imports the formatted IO content component, and sets a new function to print "Hello, World" when run. hello.go
package main
import "fmt"
func main() {
fmt.Printf("Hello, World!\n")
}
This program will print "Hello, World!" if it successfully runs, which will indicate that Go programs are compiling correctly. Save and close the file, then compile it by invoking the Go command install: