【问题标题】:Go install not working with zsh去安装不适用于 zsh
【发布时间】:2017-07-25 15:49:06
【问题描述】:

我觉得自己像个白痴,因为我以前在 macOS 和 OSX 上安装过这个,但由于某种原因,我看不出我做错了什么。请帮忙!!!我创建了一个目录~/go,这将是我的工作区。当我从主目录运行go env 时,我得到zsh: command not found: go,我知道这是因为以下文件。我的配置有什么问题?

~/.bash_profile:

export PATH=$PATH:/usr/local/go/bin

~/.zshrc:

export PATH=$PATH:/usr/local/go/bin

【问题讨论】:

  • 在运行 go env 之前,您是否已经获取了 ~/.zshrc(或启动了新的 zsh 实例)?
  • 是的,我忘记添加了。
  • 如果你运行/usr/local/go/bin/go env会发生什么?
  • 当你运行echo $PATH时,它实际上是否包含/usr/local/go/bin
  • 这个问题仍然没有答案/未解决吗?

标签: macos unix go terminal zsh


【解决方案1】:

如果您不是使用 home-brew 而是使用 macOS 软件包安装程序在 Mac OS 上安装的,那么您的 GOBIN 最终位于 /usr/local/goGOPATH 位于 $HOME/go~/.zshrc:

  export GOPATH=$HOME/go
  export GOROOT=/usr/local/go
  export GOBIN=$GOPATH/bin
  export PATH=$PATH:$GOPATH
  export PATH=$PATH:$GOROOT/bin

【讨论】:

  • 并且不要使用'~'来代替主路径:(
【解决方案2】:

下面的配置对我有用,

~/.zshrc

export GOPATH=$HOME/golang
export GOROOT=/usr/local/opt/go/libexec
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOPATH
export PATH=$PATH:$GOROOT/bin

然后您可以看到如下配置的详细信息

go env

GOARCH="amd64"
GOBIN="/Users/my-name/golang/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/my-name/golang"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/6q/h6nchrdj49zgjfcp8wstj94r0000gn/T/go-build874871088=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

【讨论】:

  • 我无法执行 Go 安装的二进制文件。将 $GOBIN 也添加到它工作的路径之后。
猜你喜欢
  • 2020-12-09
  • 1970-01-01
  • 2016-11-27
  • 1970-01-01
  • 2012-07-27
  • 1970-01-01
  • 2023-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多