Zainstaluj go z browarem i uruchom gotour

Podążałem za http://tour.golang.org / dopóki nie dotarłem do trzeciego kroku o tym mówi, że można zainstalować gotour w systemie. Następnie zainstalowałem język go z brew by:

brew install hg
brew install go

Następnie pobrałem gotour przez:

go get code.google.com/p/go-tour/gotour

Kiedy próbowałem uruchomić gotour nie rozpoznał komendy:

$ gotour
-bash: gotour: command not found

I

$ go gotour

I

$ ./gotour

Więc próbowałem zobaczyć drogę i to było pusty,

echo $GOPATH

Więc zdefiniowałem GOPATH:

GOPATH=/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/
export GOPATH

Now I can run the gotour by runing

./gotour

Ale jestem niepewny co do mojego środowiska go.. czy nie byłem w stanie uruchomić gotour przez

go run gotour

Lub po prostu wpisując (jak jest opisane na tej stronie http://www.moncefbelyamani.com/how-to-install-the-go-tour-on-your-mac/):

gotour

Chciałbym wiedzieć, czy robię wszystko dobrze, ponieważ jestem nowy w języku programowania go.

Author: Salvador Dali, 2012-10-11

6 answers

Instalacja go 1.4 z homebrew na OSX:

1) Tworzenie Katalogów

mkdir $HOME/Go
mkdir -p $HOME/Go/src/github.com/user

2) Ustaw swoje ścieżki

export GOPATH=$HOME/Go
export GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOROOT/bin

3) Zainstaluj Go

brew install go

4)" Idź po " podstawy

go get golang.org/x/tools/cmd/godoc

5) Zacznij tutaj: https://golang.org/doc/code.html w "twój pierwszy program"

 150
Author: user2562923,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-24 21:45:25

Po połączeniu powyższych odpowiedzi, to działa dla mnie na OSX 10.12 (Sierra) i Go v1.7.1 używając Homebrew:

Dodałem to z odpowiedzi Kosha do mojego .zshrc lub .bashrc:

# Go development
export GOPATH="${HOME}/.go"
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:${GOPATH}/bin:${GOROOT}/bin"

test -d "${GOPATH}" || mkdir "${GOPATH}"
test -d "${GOPATH}/src/github.com" || mkdir -p "${GOPATH}/src/github.com"

Następnie w nowym oknie/karcie terminala:

$ brew install go
==> Downloading https://homebrew.bintray.com/bottles/go-1.7.1.sierra.bottle.tar.gz
Already downloaded: /Users/nigel/Library/Caches/Homebrew/go-1.7.1.sierra.bottle.tar.gz
==> Pouring go-1.7.1.sierra.bottle.tar.gz
==> Caveats
As of go 1.2, a valid GOPATH is required to use the `go get` command:
  https://golang.org/doc/code.html#GOPATH

You may wish to add the GOROOT-based install location to your PATH:
  export PATH=$PATH:/usr/local/opt/go/libexec/bin
==> Summary
  /usr/local/Cellar/go/1.7.1: 6,436 files, 250.6M

$ go get golang.org/x/tools/cmd/godoc

$ go get github.com/golang/lint/golint

$ go get golang.org/x/tour/gotour

$ gotour
2016/10/19 12:06:54 Serving content from /Users/nigel/.go/src/golang.org/x/tour
2016/10/19 12:06:54 A browser window should open. If not, please visit http://127.0.0.1:3999
2016/10/19 12:06:55 accepting connection from: 127.0.0.1:52958
 43
Author: Gibbsoft,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-19 11:08:25

Myślę, że znalazłem rozwiązanie, powinienem był wyeksportować:

export PATH=$PATH:/usr/local/Cellar/go/1.0.2/bin/

Zamiast

GOPATH=/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/
export GOPATH

Od tego miejsca 'Go get' umieszcza binaria (chyba). gotour działa:

$ gotour
2012/10/11 18:35:50 Serving content from /usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/go-tour
2012/10/11 18:35:50 Open your web browser and visit http://127.0.0.1:3999/ 

Btw swoją odpowiedź oparłem na tym poście

Http://code.google.com/p/go-tour/issues/detail?id=39 gdzie mówią o eksporcie:

/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/

I strona pierwsze kroki z go: http://golang.org/doc/install gdzie mówią, że trzeba eksportować:

export PATH=$PATH:/usr/local/go/bin
 21
Author: golfadas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-12 15:20:28

Włożyłem to do mojego ${HOME}/.bash_profile

export GOPATH="${HOME}/.go"
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:${GOPATH}/bin:${GOROOT}/bin"

test -d "${GOPATH}" || mkdir "${GOPATH}"
test -d "${GOPATH}/src/github.com" || mkdir -p "${GOPATH}/src/github.com"

Oparty na golfadas answer, ale zaktualizowany do pracy ze starymi i nowymi wersjami brew.

 8
Author: Kosh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-22 00:21:13

Myślę, że powinieneś był ustawić GOPATH przed sobą go get. Przynajmniej w mojej maszynie to działało bez zarzutu.

Ustawiłem GOPATH do folderu w moim folderze domowym.

Mam nadzieję, że to pomoże!
 7
Author: Antonio Ribeiro,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-03 15:25:14

Tylko aktualizacja tutaj - Natknąłem się na ten sam problem, a poprzednie odpowiedzi nie pomogły. W aktualnych (~1.2.2) wersjach Go zainstalowanych przez Homebrew, musisz ustawić GOROOT na następujące:

export GOROOT=/usr/local/Cellar/go/1.2.2/libexec

Jestem trochę nie zaznajomiony ze strukturą folderów go lub zmianami w instalacji go za pośrednictwem homebrew, więc nie wiem dlaczego. Ale - jeśli brakuje ci tego, co wygląda na wszystkie podstawowe pakiety, powyższe powinno naprawić.

 5
Author: scztt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-18 03:36:20