Dla tych, którzy nie mają pojęcia, czym jest Fish: http://fishshell.com/
Podobnie, jeśli nie jesteś zaznajomiony ze środowiskiem kodowania Go i nadal chcesz spróbować rozwiązać tę małą zagadkę, oto kilka informacji: http://golang.org/doc/code.html
W każdym razie, próbuję skonfigurować dev-lang. środowisko na nowej maszynie, gdzie próbuję Fisha.
Więc mam $GOPATH
Ustawić /home/<me>/workspace/go-workspace
zarówno bash
i fish
. Oznacza to, że go
narzędzie oczekuje a bin
, pkg
, i src
pod tym katalogiem. Które tam jest.
Jednak pisanie go get
będąc w katalogu z jakimś kodem (który normalnie pobierałby zależności), uzyskuje
package code.google.com/p/go.crypto/openpgp: cannot download, $GOPATH not set. For more details see: go help gopath
package code.google.com/p/go.crypto/openpgp/armor: cannot download, $GOPATH not set. For more details see: go help gopath
package code.google.com/p/go.crypto/ssh: cannot download, $GOPATH not set. For more details see: go help gopath
package github.com/codegangsta/cli: cannot download, $GOPATH not set. For more details see: go help gopath
package github.com/oleiade/reflections: cannot download, $GOPATH not set. For more details see: go help gopath
package launchpad.net/goamz/aws: cannot download, $GOPATH not set. For more details see: go help gopath
package launchpad.net/goamz/s3: cannot download, $GOPATH not set. For more details see: go help gopath
Wiem, że to absolutnie fałszywe, bo mogę biegać echo $GOPATH
i wyskakuje wartość, którą ustawiłem.
Potem dziwnie, jeśli uruchomię to samo polecenie bash
z tym samym $GOPATH
ustaw, po prostu działa.
Czy ktoś może mi powiedzieć dlaczego.
Lub, bardziej ogólnie, czy możesz mi powiedzieć, dlaczego program wykrywa zmienną środowiskową w jednej powłoce, ale nie w innej?
-x
to, czego mi brakowało. D'oh.