我跟着http://tour.golang.org/,直到第三步,告诉你可以在你的系统上安装。 之后我用brew安装了go语言:
brew install hg
brew install go
然后我通过以下方式下载了我们:
go get code.google.com/p/go-tour/gotour
当我尝试启动它时,它没有识别命令:
$ gotour
-bash: gotour: command not found
和
$ go gotour
和
$ ./gotour
所以我试图看到go路径,它是空的,
echo $GOPATH
所以我定义了GOPATH:
GOPATH=/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/
export GOPATH
现在我可以通过运行
来运行./gotour
但是我对我的环境没有安全感......我不是能够通过
来运行。go run gotour
或只是输入(如本网站http://www.moncefbelyamani.com/how-to-install-the-go-tour-on-your-mac/所述):
gotour
我想知道我是不是以正确的方式做事,因为我是go go编程语言的新手。
答案 0 :(得分:169)
mkdir $HOME/Go
mkdir -p $HOME/Go/src/github.com/user
export GOPATH=$HOME/Go
export GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOROOT/bin
brew install go
go get golang.org/x/tools/cmd/godoc
答案 1 :(得分:46)
根据上面的各种答案,这对于OSX 10.12 (Sierra)
和Go v1.7.1
使用Homebrew对我有用:
我在Kosh对.zshrc
或.bashrc
的答案中添加了此内容:
# Go development
export GOPATH="${HOME}/.go"
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:${GOPATH}/bin:${GOROOT}/bin"
test -d "${GOPATH}" || mkdir "${GOPATH}"
test -d "${GOPATH}/src/github.com" || mkdir -p "${GOPATH}/src/github.com"
然后在新的终端窗口/标签中:
$ brew install go
==> Downloading https://homebrew.bintray.com/bottles/go-1.7.1.sierra.bottle.tar.gz
Already downloaded: /Users/nigel/Library/Caches/Homebrew/go-1.7.1.sierra.bottle.tar.gz
==> Pouring go-1.7.1.sierra.bottle.tar.gz
==> Caveats
As of go 1.2, a valid GOPATH is required to use the `go get` command:
https://golang.org/doc/code.html#GOPATH
You may wish to add the GOROOT-based install location to your PATH:
export PATH=$PATH:/usr/local/opt/go/libexec/bin
==> Summary
/usr/local/Cellar/go/1.7.1: 6,436 files, 250.6M
$ go get golang.org/x/tools/cmd/godoc
$ go get github.com/golang/lint/golint
$ go get golang.org/x/tour/gotour
$ gotour
2016/10/19 12:06:54 Serving content from /Users/nigel/.go/src/golang.org/x/tour
2016/10/19 12:06:54 A browser window should open. If not, please visit http://127.0.0.1:3999
2016/10/19 12:06:55 accepting connection from: 127.0.0.1:52958
答案 2 :(得分:22)
我想我找到了解决方案,我应该已经导出了:
export PATH=$PATH:/usr/local/Cellar/go/1.0.2/bin/
而不是
GOPATH=/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/
export GOPATH
因为那些'go get'会放置二进制文件(我猜)。我们正在工作:
$ gotour
2012/10/11 18:35:50 Serving content from /usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/go-tour
2012/10/11 18:35:50 Open your web browser and visit http://127.0.0.1:3999/
顺便说一句,我的回答基于这篇文章
http://code.google.com/p/go-tour/issues/detail?id=39 他们谈论出口的地方:
/usr/local/Cellar/go/1.0.2/src/pkg/code.google.com/p/
来自go的入门页面: http://golang.org/doc/install 他们说你必须出口:
export PATH=$PATH:/usr/local/go/bin
答案 3 :(得分:9)
我把它放在我的$ {HOME} /.bash_profile
中export GOPATH="${HOME}/.go"
export GOROOT="$(brew --prefix golang)/libexec"
export PATH="$PATH:${GOPATH}/bin:${GOROOT}/bin"
test -d "${GOPATH}" || mkdir "${GOPATH}"
test -d "${GOPATH}/src/github.com" || mkdir -p "${GOPATH}/src/github.com"
基于golfadas的答案,但已更新为使用新旧版本的brew。
答案 4 :(得分:7)
我应该在go get
之前设置GOPATH。
好吧,至少在我的机器上这很顺利。
我将GOPATH设置为我的主文件夹中的文件夹。
希望这有帮助!
答案 5 :(得分:5)
这里只是更新 - 我遇到了同样的问题,之前的答案没有帮助。在Homebrew安装的Go的当前(~1.2.2)版本中,您必须将GOROOT设置为以下内容:
export GOROOT=/usr/local/Cellar/go/1.2.2/libexec
我对go文件夹结构有点不熟悉,或者通过自制程序更改了go安装,所以我不知道为什么。但是 - 如果您错过了所有核心软件包,那么上述内容应该得到解决。