10

GOPATHに設定されているにもかかわらず、.profileを呼び出したときに表示されず、ターゲットの場所go envに影響を与えていないように見える で、非常にイライラする問題が発生しています。go install

を使用go installしてパッケージをインストールしようとしましたが、このエラーが発生しました。これは/usr/lib/go、目的のディレクトリではなく、にインストールしようとしていることを明確に示してい/home/me/dev/goます。

$ go install github.com/songgao/colorgo
go install github.com/songgao/go.pipeline: mkdir /usr/lib/go/pkg/linux_386/github.com: permission denied

go env次の結果が得られます。

$ go env
GOROOT="/usr/lib/go"
GOBIN=""
GOARCH="386"
GOCHAR="8"
GOOS="linux"
GOEXE=""
GOHOSTARCH="386"
GOHOSTOS="linux"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_386"
GOGCCFLAGS="-g -O2 -fPIC -m32 -pthread"
CGO_ENABLED="1"

しかし、それは間違いなく設定されています。

$ echo $GOPATH
/home/me/dev/go

更新: GOPATH をエクスポートし~/.profileてソースにしましたが、まだ同じ問題が発生しています。

$ export GOPATH=/home/me/dev/go
$ go env
GOROOT="/usr/lib/go"
GOBIN=""
GOARCH="386"
GOCHAR="8"
GOOS="linux"
GOEXE=""
GOHOSTARCH="386"
GOHOSTOS="linux"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_386"
GOGCCFLAGS="-g -O2 -fPIC -m32 -pthread"
CGO_ENABLED="1"

再度更新: go1.1beta2 にアップグレードしてから、この問題はなくなりました。GOPATH正しく設定されているように見えたので、何が間違っていたのかわかりませんが、現在はすべて機能しているようです。

4

4 に答える 4

4

GOPATHとワークスペース

$ mkdir -p $HOME/dev/go/src
$ mkdir -p $HOME/dev/go/bin

$HOME/.profile

export GOPATH=$HOME/dev/go:
export PATH=$PATH:$HOME/dev/go/bin

次に、再起動またはログアウトしてログインします。

ログインしたらすぐに、何よりも先に次を実行します。

$ env | grep -i '^GO'
GOPATH=/home/me/dev/go
$ cat $HOME/.profile

どのような出力が得られますか?

于 2013-04-06T04:16:14.383 に答える
1

ソフト リンクを作成し、次のようにgoバイナリをコピー/usr/localします。

# ln -sf /usr/local/go/bin/go /usr/bin/go
于 2016-04-29T12:14:35.403 に答える