Der findes et sæt programmer til at bygge og behandle Go-kildekode. I stedet for at blive kørt direkte, bliver programmerne i dette sæt normalt påkaldt af go-programmet. GOPATH og GOROOT er miljøvariabler, der definerer en bestemt opstilling og organisering for Go-kildekoden. Stierne for gopath og goroot kan ændres eksplicit, hvis det er nødvendigt.
GOPATH
GOPATH, også kaldet workspace-mappen, er den mappe, hvor Go-koden hører hjemme. Den er implementeret af og dokumenteret i pakken go/build og bruges til at opløse importangivelser. Værktøjet go get henter pakker til den første mappe i GOPATH. Hvis miljøvariablen ikke er indstillet, er GOPATH som standard en undermappe med navnet “go” i brugerens hjemmemappe. For at kontrollere dette indtastes følgende kommando:
On Windows:C:\Users\%USERPROFILE%\goOn Linux:$HOME/go
For at kontrollere den aktuelle GOPATH indtastes følgende kommando:
C:\Users\%USERPROFILE%\go env GOPATH
GOPATH indeholder 3 mapper under sig, og hver mappe under den har specifikke funktioner:
- src: Den indeholder kildekode. Stien under denne mappe bestemmer importstien eller navnet på den eksekverbare fil.
- pkg: Den indeholder installerede pakkeobjekter. Hvert måloperativsystem- og arkitekturpar har sin egen undermappe til pkg.
- bin: Den indeholder kompilerede kommandoer. Hver kommando er navngivet efter sin kildemappe.
Når man bruger moduler i Go, bruges GOPATH ikke længere til at bestemme import. Den bruges dog stadig til at gemme downloadet kildekode i pkg og kompilerede kommandoer bin.
GOROOT
GOROOT er til compiler og værktøjer, der kommer fra go-installationen, og bruges til at finde standardbibliotekerne. Den bør altid være indstillet til installationsmappen.
For at kontrollere den aktuelle GOROOT indtastes følgende kommando:
C:\Users\%USERPROFILE%\go env GOPATH
Det er muligt at installere Go-værktøjerne til et andet sted. Dette kan gøres ved at indstille miljøvariablen GOROOT til at pege på den mappe, hvor den blev installeret, selv om dette ikke anbefales, da den er forudindstillet med værktøjerne.