如何在Mac OS X 10.10中设置GOPATH
我在Mac OS X中安装了Go 1.4。以前我有Go 1.0。我将GOROOT和PATH设置如下,
Dineshs-MacBook-Air:go-cassandra Dany$ which go/usr/local/go/bin/go
Dineshs-MacBook-Air:go-cassandra Dany$ export GOROOT=/usr/local/go/bin/go
Dineshs-MacBook-Air:go-cassandra Dany$ export PATH=$PATH:$GOROOT/bin
Go安装在“ / usr / local / go / bin /
go”中。然后将GOPATH设置为我的项目src目录。我可以在目录中运行go代码。但是,当我尝试安装gocql时,出现错误。
Dineshs-MacBook-Air:go-cassandra Dany$ sudo go get github.com/gocql/gocqlpackage github.com/gocql/gocql: cannot download, $GOPATH not set. For more details see: go help gopath
有人可以帮我吗?谢谢
@VonC我也尝试了其他选项。我将GOROOT更改为go的安装目录。但这没有帮助。然后我更改了GOPATH。
Dineshs-MacBook-Air:go-cassandra Dany$ export GOROOT=/usr/local/goDineshs-MacBook-Air:go-cassandra Dany$ export PATH=$PATH:$GOROOT/bin
Dineshs-MacBook-Air:go-cassandra Dany$ export GOPATH=/Users/Dany/Documents/FALL-2013-COURSES/Imp_Data_structures/workspace/go-cassandra
Dineshs-MacBook-Air:go-cassandra Dany$ sudo go get github.com/gocql/gocql
Password:
package github.com/gocql/gocql: cannot download, $GOPATH not set. For more details see: go help gopath
Dineshs-MacBook-Air:go-cassandra Dany$ echo $GOPATH
/Users/Dany/Documents/FALL-2013-COURSES/Imp_Data_structures/workspace/go-cassandra
Dineshs-MacBook-Air:go-cassandra Dany$ ls
bin pkg src
Dineshs-MacBook-Air:go-cassandra Dany$
回答:
笔记:
GOROOT
应该引用一个文件夹(安装go的位置),而不是go
可执行文件本身
export GOROOT=/usr/local/goexport PATH=$PATH:$GOROOT/bin
正如戴夫(Dave在评论中提到的那样,您不必完全根据GOROOT
自己的情况进行设置。
看到这篇文章,您不需要设定GOROOT
,真的。
GOPATH
应该引用一个文件夹,在该文件夹下src
,pkg
和bin
。(不应直接引用该src
文件夹):
请参见“ 如何编写Go代码-工作区 ”
关于GOPATH
:
- 尝试将其设置在您的中
~/.bashrc
(使用export
)。 - 检查您当前的shell是bash(而不是其他类似bash
fish
) - 检查的输出
go env
。
不要执行sudo go get
,因为用于sudo
(root
)的环境变量将与当前用户不同:
go get github.com/gocql/gocql
或者您需要执行sudo -E bash -c 'gogetgithub.com/gocql/gocql'
,但我怀疑您不需要root
在这里)
参见sudo警告:
使用
sudo
命令调用它们时,不会将添加到这些位置的任何变量反映出来,因为sudo
具有重置环境和设置安全路径的默认策略(此行为在中定义/etc/sudoers
)
以上是 如何在Mac OS X 10.10中设置GOPATH 的全部内容, 来源链接: utcz.com/qa/413433.html