2016-03-31 59 views
0

我想在Linux中構建和安裝go 1.6(amd64)。問題與建設去1.6

我已經安裝去1.42。

我不斷收到錯誤:建立dist時不允許導入循環。

我已將symlinked從/ usr/lib/golang/bin/go中移除/ usr/bin。 我已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" 

任何想法是怎麼回事錯在這裏?

+0

如果您正在尋找快速安裝,請使用自制軟件:'brew install go'。 – nevets

+0

我喜歡使用make.bash --clean-all從二進制tarball安裝。我想知道這裏的「進口週期」的來源。 – Harish

+0

'/ usr/bin'對於GOROOT來說絕對不是一個好的值,我懷疑'/ usr'是GOROOT_BOOTSTRAP的正確值。 GOROOT應該是你解壓縮的tar包的根目錄(甚至可以放在'/ usr/local/go'中,而不要設置GOROOT),並且GOROOT_BOOTSTRAP應該是現有go1.4安裝的GOROOT。它與你可能已經鏈接到'go'可執行文件的地方沒有任何關係(但你可能需要將bin目錄添加到你的路徑中,而不是依賴於符號鏈接) – JimB

回答

0

謝謝JimB!

問題在於GOROOT_BOOTSTRAP的值不正確。它應該設置爲現有的go 1.4安裝目錄,其中包含所有go代碼&庫,而不僅僅是「go」可執行文件。