GOPATH 和 GOROOT 的值应该是多少?

新手上路,请多包涵

我正在尝试像这样安装 doozer

 $ goinstall github.com/ha/doozer

我收到这些错误。

 goinstall: os: go/build: package could not be found locally
goinstall: fmt: go/build: package could not be found locally
goinstall: io: go/build: package could not be found locally
goinstall: reflect: go/build: package could not be found locally
goinstall: math: go/build: package could not be found locally
goinstall: rand: go/build: package could not be found locally
goinstall: url: go/build: package could not be found locally
goinstall: net: go/build: package could not be found locally
goinstall: sync: go/build: package could not be found locally
goinstall: runtime: go/build: package could not be found locally
goinstall: strings: go/build: package could not be found locally
goinstall: sort: go/build: package could not be found locally
goinstall: strconv: go/build: package could not be found locally
goinstall: bytes: go/build: package could not be found locally
goinstall: log: go/build: package could not be found locally
goinstall: encoding/binary: go/build: package could not be found locally

原文由 jshen 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 527
2 个回答

GOPATH cmd/go 文档 中讨论:

GOPATH 环境变量列出了寻找 Go 代码的位置。在 Unix 上,该值是一个以冒号分隔的字符串。在 Windows 上,该值是一个以分号分隔的字符串。在 Plan 9 上,该值是一个列表。

GOPATH 必须设置为在标准 Go 树之外获取、构建和安装包。

GOROOT安装说明 中讨论:

Go 二进制发行版假定它们将安装在 /usr/local/go (或 c:\Go 在 Windows 下),但可以将 Go 工具安装到不同的位置。在这种情况下,您必须将 GOROOT 环境变量设置为指向它的安装目录。

例如,如果您安装了 Go to your home directory,则应将以下命令添加到 $HOME/.profile

 export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin

注意: GOROOT 只有在安装到自定义位置时才必须设置。

Chris Bunch 回答的 更新版本。)

原文由 pje 发布,翻译遵循 CC BY-SA 3.0 许可协议

这是我的简单设置:

 directory for go related things: ~/programming/go
directory for go compiler/tools: ~/programming/go/go-1.4
directory for go software      : ~/programming/go/packages

GOROOT、GOPATH、PATH设置如下:

 export GOROOT=/home/user/programming/go/go-1.4
export GOPATH=/home/user/programming/go/packages
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

所以,简而言之:

GOROOT 用于来自 go 安装的编译器/工具。

GOPATH 适用于您自己的 go 项目/第 3 方库(使用“go get”下载)。

原文由 EvgenijM86 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题