2016-03-31 12 views
0

私はlinuxでgo 1.6をビルドしてインストールしようとしています(amd64)。ビルドの問題Go 1.6

私はすでにgo 1.42をインストールしています。

私はエラーが発生し続けます:ビルドdist中にインポートサイクルは許可されません。

/usr/lib/golang/bin/goから/ usr/binにシンボリックリンクしました。 Iが設定されている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

クイックインストールをお探しの場合は、homebrew: 'brew install go'を使用してください。 – nevets

+0

私は、make.bash --clean-allを使ってバイナリのtarballからインストールするのが好きです。私はここで "輸入サイクル"の源を知りたい。 – Harish

+0

'/ usr/bin'はGOROOTにはあまり意味がありません.GOROOT_BOOTSTRAPの正しい値は'/usr'です。 GOROOTは解凍したtarballのルートディレクトリでなければなりません( '/ usr/local/go'に入れてGOROOTを設定しない方が良い).GOROOT_BOOTSTRAPは既存のgo1.4インストールのGOROOTでなければなりません。これは、 'go'実行可能ファイルをシンボリックリンクした場所とは関係ありません(シンボリックリンクに頼るのではなく、おそらくあなたのパスにbinディレクトリを追加するべきです) – JimB

答えて

0

Thanks JimB!

問題は、GOROOT_BOOTSTRAPの値が正しくないことが原因です。実行ファイルだけでなく、すべてのgoコード&ライブラリを保持している既存のgo 1.4インストールディレクトリに設定する必要があります。