您的当前位置:首页正文

Mac OS Go安装出现segmentation fault解

来源:东饰资讯网

想看结论直接拉到最下面

安装Go:

从官网下载安装的dmg文件。一路next。

配置Go环境变量:

目前配置:
/etc/profile 下:


image.png

~/.zshrc 下:


image.png

执行Go之后的结果:


image.png

查询google,并没有什么靠谱的答案。

Trackback原因:

go这个命令可以使用,说明了在/usr/local/bin中可能有这个命令。

偶然间,使用which go, 发现居然显示了go的路径在/usr/local/bin。

这和讲道理本来应该的情况是不一样的。本来应该在/usr/local/go/bin/go。

于是查看/usr/local/bin,发现里面存在go, gofmt , godoc 三个存在在/usr/local/go/bin里面,默认应该使用的是path.d/go这个文件去设置环境变量。

“ll”一下,结果发现,go、godoc、gofmt居然是从Cellar里面link过来的。Cellar这个文件夹里面,大部分的东西都是homebrew装的。于是大胆推测,以前应该是使用过homebrew安装过Go。所以这次再使用官方的安装包安装Go可能会起冲突。

image.png

结论

  • Go安装,启动后出现segmentation fault的原因应该是brew install 的旧版本和包安装的新版本起冲突。
  • 解决的方法是:
    • 删除以前homebrew安装的go:brew uninstall go。
    • 删除现在用包安装的go:按照 上去做。
      • 删除/usr/local/go
      • 删除/etc/path.d/go
    • 重新使用golang官网上下载的包进行安装。
显示全文