Wie um zu bestätigen, dass $GOPATH und $GOROOT sind richtig eingestellt?
Dies ist nicht eine Wiederholung dieser Frage:
was sollten die Werte von GOPATH und GOROOT?
Ich möchte nicht wissen, was die Werte sein sollten. Ich will wissen, was ich sehen sollte wenn ich ls $GOROOT
oder ls $GOPATH
in die Konsole. Ich bin mir ziemlich sicher, dass ich die Dinge falsch eingestellt nach einem tutorial vor fast einem Jahr, und ich möchte in der Lage sein, um zu bestätigen, dass diese beiden zeigen auf, wo Sie sein sollten, indem Sie einfach überprüfen, dass das, was Sie zeigen sieht richtig aus.
Hier, wo ich jetzt bin. Es sieht aus wie $GOROOT
zeigt nirgendwo. Ich bin mir ziemlich sicher, sollte es zeigen usr/local/go
, aber es wäre viel einfacher, um zu bestätigen, wenn ich wusste, was das erwartete Ergebnis der ls $GOROOT
werden soll.
Als für $GOPATH
ich bin mir nicht ganz sicher, ob mein "Arbeitsbereich" ist, wo alle mein code ist, oder vielleicht auch nur die github-Zeug, oder vielleicht die bestimmten Ordner, die ich arbeite innerhalb. Ich weiß, dass es zeigen soll, um mein "Werk-Raum", aber ich weiß nicht, welche Art von Arbeit Raum ich bin auf der Suche nach aussieht.
Sephs-MBP:ThumbzArt seph$ $GOROOT
Sephs-MBP:ThumbzArt seph$ $GOPATH
-bash: /Users/seph/code/golang: is a directory
Sephs-MBP:ThumbzArt seph$ ls $GOROOT
Bman.jpg README.md ThumbzArt.sublime-workspacescripts thumbzart.go
LICENSE.md ThumbzArt.sublime-project public templates ticktock.go
Sephs-MBP:ThumbzArt seph$ $GOPATH
-bash: /Users/seph/code/golang: is a directory
Sephs-MBP:ThumbzArt seph$ ls $GOPATH
- bin p pkg src
Sephs-MBP:ThumbzArt seph$ ls /usr/local/go
AUTHORS CONTRIBUTORS PATENTS VERSION bin doc lib pkg src
CONTRIBUTING.md LICENSE README.md api blog favicon.ico misc robots.txt test
Sephs-MBP:ThumbzArt seph$
Ich weiß, diese Frage scheint lächerlich, aber es ist schwer, um zu bestätigen, Dinge, für die Sie nicht die erwarteten Ergebnisse.
Danke
Sephs-MBP:streak seph$ go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/seph/code/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GO15VENDOREXPERIMENT=""
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
Sephs-MBP:streak seph$ go version
go version go1.5.2 darwin/amd64
Sephs-MBP:streak seph$ which go
/usr/local/go/bin/go
- Nicht GOROOT. Wenn Sie GOPATH, die Extras gehen mit schaffen, was notwendig ist. Sie brauchen nicht zu tun, nichts extra.
- Was "silent failure" sind Sie immer auf??? Wir müssen wissen, was das problem eigentlich ist, das Sie lösen wollen.
- Ich bin immer eine Stille scheitern, und ich habe nicht berührt, alles, was seit meinem letzten Einsatz. Ich weiß, dass ich ein kleines Skript würde ich kopieren und fügen Sie den set $GOPATH oder $GOROOT oder $PATH oder vielleicht alle drei. Aber kein Fehler geworfen wird, es ist wirklich schwer zu sagen, was fehlt.
- Und ich bin okay mit mein problem gelöst. Ich bin gerade auf der Suche nach einer online-Ressource, die sagt "das ist es, was diese Pfade zeigen Sie auf, Sie können überprüfen, es ist richtig, wenn
ls
sieht aus wie x" - Es gibt keine "silent failures" von den go-tool, wenn es funktioniert überhaupt nichts. Verwenden Sie die
-x
option, die Sie wollen, um zu sehen, alle Befehle ausgeführt. - okay. nichts passiert. es hängt ja nur. Und ich bin okay mit herauszufinden Dinge aus. Ich wollte nur wissen, was die erwarteten Ergebnisse
ls $GOPATH
undls $GOROOT
sind - Ich bin mir nicht erwartet, Euch fix mein problem, für mich. Ich bitte Sie um eine Bestätigung auf die Daten. Eine Bestätigung, die sollte wohl einfach zu finden sein.
- Die Ausgabe von
go env
undgo version
- Bearbeitet beide in der Frage. Und danke für deine Hilfe.
- es scheint, dass
ls $GOROOT
unterscheidet sich vonls usr/local/go
obwohlgo env
sagtGOROOT="/usr/local/go"
- Ofc unterscheidet es sich:
$GOROOT
tritt auch nicht sols $GOROOT
- Ausgänge die Inhalte Ihrer Arbeit, dir. Ist wirklich gehen, die gehen aus /usr/local/go (which go
). Können Sie bauen Ihre sourcefile? - By the way: Was macht Ihr Programm? Sicher, dass Ihr Programm funktioniert exit?
- Ich fügte
which go
. Ich bin nicht sicher, welches sourcefile Sie sprechen. Ich habe eine einfachehelloworld.go
lief gut. Ich habe ein weiteres Projekt der gibt keine Fehler und nur irgendwie hängt sich auf, wenn ich laufengo run thumbzart.go [-x]
. Bot dieser Projekte geklappt, letztes mal als ich Sie berührte. Das Programm Gastgeber einer website. Gibt es eine andere source-Datei, die ich aufbauen sollte? - Was ich denke: go ist das setup ok, thumbzart.gehen Sie nicht.
- Genau das denke ich auch. Ich hatte gerade nicht berührt thumbzart.gehen, und ich habe etwas mit den Pfaden jedes mal, wenn ich es lief. Wollte ich nur bestätigen, es war nicht in meinem set-up, und das scheint bestätigt zu werden. Danke für Eure Hilfe.
- Siehe auch: Wie um zu zeigen, eine environment-variable der aktuelle Wert? auf Unix & Linux Stack Exchange
Du musst angemeldet sein, um einen Kommentar abzugeben.
EDIT: ein Weiteres sehr nützliches feature, das ich gerade gestolpert ist:
go help gopath
. Dies sollte wohl jemands Antwort.Den Ordner
$GOPATH
Punkte sollten wie diese:$GOROOT
, auf der anderen Seite, werden Sie unerwartete Ergebnisse, wenn Siels $GOROOT
im Vergleich zuls $GOPATH
. Dies ist, weil$GOROOT
ist nicht festgelegt, in diesem Kontext, denke ich.Wenn Sie
go env
du wirst sehen, die wahre Natur der$GOROOT
Und wenn Sie erhalten das Ergebnis der
$GOROOT
ausgo env
und tunls
Sie sollten so etwas wie dieses:Wenn alle diese Dinge prüfen, dann Ihre
$GOPATH
und$GOROOT
korrekt eingestellt sind.$GOROOT
ist nicht festgelegtls $GOROOT
wirdls
: Es druckt Ihr Arbeitsverzeichnis.ls $GOPATH
" bit. Was du sagst macht Sinn, aber es war unerwartet für mich an der Zeit.echo $GOROOT
🙂echo
nächsten Zeit wahrscheinlich lohnt es. Ich mag das wirklich. Danke @Volker