2016-03-31 11 views
0

Ich versuche zu bauen und zu installieren 1.6 in Linux. (AMD64).Problem mit Gebäude Go 1.6

Ich habe bereits 1.42 installiert.

Ich bekomme immer den Fehler: Import-Zyklus nicht erlaubt, während des Aufbaus dist.

Ich bin symlinked zu/usr/bin von/usr/lib/golang/bin/gehen. Ich habe GOROOT_BOOTSTRAP =/usr

GOARCH="amd64" 
GOBIN="" 
GOCHAR="6" 
GOEXE="" 
GOHOSTARCH="amd64" 
GOHOSTOS="linux" 
GOOS="linux" 
GOPATH="/usr/share/gocode" 
GORACE="" 
GOTOOLDIR="/usr/bin/pkg/tool/linux_amd64" 
GOROOT="/usr/bin" 
CC="gcc" 
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0" 
CXX="g++" 
CGO_ENABLED="1" 

Jede Idee gesetzt, was falsch ist hier los?

+0

Wenn Sie nach einer schnellen Installation suchen, verwenden Sie Homebrew: 'brew install go'. – nevets

+0

Ich möchte aus dem binären Tarball mit make.bash - clean-all installieren. Ich möchte hier die Quelle des "Import-Zyklus" kennenlernen. – Harish

+0

'/ usr/bin' ist definitiv kein guter Wert für GOROOT, und ich bezweifle'/usr' ist der korrekte Wert für GOROOT_BOOTSTRAP. GOROOT sollte das Root-Verzeichnis des entpackten Tarballs sein (besser noch in/usr/local/go eingeben und GOROOT nicht setzen), und GOROOT_BOOTSTRAP sollte der GOROOT für die bestehende go1.4-Installation sein. Es hat nichts damit zu tun, wo Sie die ausführbare 'go'-Datei symbolisiert haben (aber Sie sollten wahrscheinlich das bin dir zu Ihrem Pfad hinzufügen, anstatt sich auf den Symlink zu verlassen) – JimB

Antwort

0

Danke JimB!

Das Problem lag an dem falschen Wert für GOROOT_BOOTSTRAP. Es sollte auf das vorhandene go 1.4 Installationsverzeichnis gesetzt werden, das alle go code & Bibliotheken enthält und nicht nur die "go" ausführbare Datei.