首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >go安装: GOPATH之外的目录

go安装: GOPATH之外的目录
EN

Stack Overflow用户
提问于 2014-11-28 16:39:29
回答 1查看 2.6K关注 0票数 1

我刚刚安装了Go,我的go install无法工作。我按照YouTube上的一个教程编写了一个HelloWorld.go应用程序,但是我一直收到错误:

go install: no install location for directory /Users/####/Documents/Dev/go/src/github.com/####/hello outside GOPATH

这是我的go env

代码语言:javascript
复制
GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/####/Documents/Dev/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"

在我跟踪人员的教程中,GOPATH也被设置为一个文件夹,然后创建文件夹/src/github.com/.等,然后用我的代码在目录中运行go install。下面是代码,尽管我认为代码不会有多大问题:

代码语言:javascript
复制
package main

import "fmt"

func main() {
    fmt.Println("Hello, world!");
}

当我使用代码在目录中运行pwd命令时,这是输出:/Users/####/Documents/Dev/go/src/github.com/####/hello

当我使用代码在目录中运行echo $GOPATH命令时,这是输出:/Users/####/Documents/Dev/go

我在运行Mac。

EN

回答 1

Stack Overflow用户

发布于 2015-01-04 23:08:47

我能想到两种可能性:

  1. GOBIN环境变量

我建议您阅读有关go命令的文档,特别是关于GOPATH envvar的章节。引用:

bin/目录保存已编译的命令。每个命令都以其源目录命名,但只命名为最后一个元素,而不是整个路径。也就是说,DIR/src/foo/quux中的源命令安装在DIR/bin/quux中,而不是DIR/bin/foo/quux中。取消foo/,以便您可以将DIR/bin添加到您的路径中,以获取已安装的命令。如果设置了GOBIN环境变量,则命令将安装到它命名的目录中,而不是DIR/bin。

Go很可能试图在这里安装您的程序,并遇到权限错误。可能只是个错误信息。在任何情况下,我都不清楚你为什么要设置$GOBIN。若要将go工具添加到路径中,请直接添加目录:export PATH=/usr/local/go/bin:$PATH

  1. 不区分大小写的文件系统

如果这不起作用,请检查主目录的情况,就像https://stackoverflow.com/a/27430341中的问题一样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27192909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档