我遇到了一个非常令人沮丧的问题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"
但最肯定的是is set.
$ echo $GOPATH
/home/me/dev/go
Update:我已将 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
似乎设置正确,但现在显然一切正常。
GOPATH和工作空间
$ mkdir -p $HOME/dev/go/src
$ mkdir -p $HOME/dev/go/bin
In $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
你得到什么输出?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)