当我尝试运行go install
时,我得到以下内容:
go install golang-book/chapter11/math: mkdir /Users/Swanros/Go/pkg/darwin_amd64: permission denied
然后我尝试sudo go install
并获得以下内容:
go install: no install location for directory /Users/Swanros/Go/src/golang-book/chapter11/math outside GOPATH
这是我的go env
:
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/Swanros/Go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
echo $GOPATH
输出:
/Users/Swanros/Go
我错过了什么?我整个上午一直在处理这件事。
答案 0 :(得分:7)
看起来像权限问题,更改$GOPATH
上的所有权应该修复它。
sudo chown -R $USER $GOPATH
我猜你以某种方式安装了root用户,改变了$GOPATH/pkg
的权限。