所以我决定要学习go ,所以我开始了 tour 。在 stage 3在该游览中,他们建议使用 go checkout 该游览的副本并在本地运行它,因此我通过推荐的 installer package 安装了 mac 版 go。 .
然后,我有了可用的 go
命令,因此我按照导览中的建议运行了 go get code.google.com/p/go-tour/gotour
。
它在游览中显示“然后运行生成的 gotour 可执行文件”。找不到可执行文件。
go get
的输出是这样的:
package code.google.com/p/go-tour/gotour: Get https://code.google.com/p/go-tour/source/checkout?repo=: EOF
我知道 EOF 意味着文件结束,但我不确定这是否是错误消息。
我安装了hg
:
$ hg --version
Mercurial Distributed SCM (version 2.3.1)
我设置了我的 $GOPATH
(并且该文件没有出现在那里):
echo $GOPATH
/Users/alex/.golib
运行go env
返回:
GOROOT="/usr/local/go"
GOBIN=""
GOARCH="386"
GOCHAR="8"
GOOS="darwin"
GOEXE=""
GOHOSTARCH="386"
GOHOSTOS="darwin"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_386"
GOGCCFLAGS="-g -O2 -fPIC -m32 -pthread -fno-common"
CGO_ENABLED="1"
如果有帮助,我正在使用 fish作为我的外壳。
我做错了什么?
最佳答案
a go get
(与 go get -u
相反)将获取、编译并安装您想要在 中的 go 模块$GOPATH
。
可执行文件 gotour
将位于 $GOPATH/bin
中。
因此请确保您的路径中有 $GOPATH/bin
。
执行后,您应该看到:
2012/09/15 10:43:57 Serving content from $GOPATH/src/code.google.com/p/go-tour
2012/09/15 10:43:57 Open your web browser and visit http://127.0.0.1:3999/
注意(个人偏好):我会使用比 /Users/alex/.golib
更可见的路径:/Users/alex/go
GOPATH
不仅仅是为了获取一些库,而是为了开发所有的 go 项目。
关于mercurial - 为什么我无法使用 go get 获取 gotour?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12435348/