mac下go开发环境配置

brew 安装 go

1
2
3
brew install go
# 或者
brew install golang

运行 go version,返回 go 版本即安装成功

此外还可通过源代码安装https://golang.google.cn/dl/

设置 path

这里用的是 zsh,编辑~/.zshrc,粘贴命令

1
2
3
4
# go
export GOPATH=$HOME/workspace/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN

Delve 调试 Go 项目

第一步:创建证书

  • 打开钥匙串访问;
  • 菜单栏中选择钥匙串访问-证书助理-创建证书开始创建自签名证书;
  • 证书名称设置为 dlv-cert(记住这个名字,后面会用到);身份类型选择自签名根证书;证书类型选择代码签名,最后在让我覆盖这些默认值处打上勾,选择继续;
  • 在接下来的窗口中把有效期改长一些,例如改成 10 年(3650 天);
  • 然后一直往后,直到出现选择指定用于该证书的位置,选择钥匙串系统,然后选择创建;

这样证书就创建好了。

可能遇到的问题:创建证书时报未知错误

解决方案:指定用于该证书的位置时先选择登录,创建成功后,这个证书显示在登录选项里面。选中这个证书直接拉到系统选项上,然后系统选项里也有了这个证书,最后删除登录里面的这个证书

第二步 :信任证书

  • 在钥匙串访问窗口左面选择钥匙串系统;然后在右面选择刚才创建的证书(按名字查找,例如 dlv-cert);
  • 点鼠标右键,选择显示简介打开证书详细信息窗口;
  • 在信任一栏中代码签名处选择始终信任,这样使用该证书进行签名操作的时候就不会弹出提示框询问了。
  • 然后在窗口左面选择密钥,在右面根据名字选择对应的专用密钥,点击鼠标右键选择显示简介;
  • 在弹出的窗口中选择访问控制标签页,然后选择允许所有应用程序访问此项目,这样进行调试的时候就不需要每次输入密码了。

后续操作

1
2
3
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
brew install go-delve/delve/delve
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv

输入 dlv version

如果看到**Delve Debugger**的版本信息,则表明 Delve 安装成功了!

使用 vscode 调试

扩展:安装 go 插件

点击右边的 Extensions 图标,搜索 Go 插件,选择 Go 进行安装,安装成功后重启 vscode

遇到的坑:

按 f5 调试报错:could not launch process: EOF
解决方案:https://github.com/derekparker/delve/issues/1165

1
2
3
4
5
6
7
8
I rollback my CommandLineTools,
Temporarily solved the problem by removing new Command Line Tools
$ sudo rm -rf /Library/Developer/CommandLineTools

then go to page https://developer.apple.com/download/more/
download and install previous version

Command Line Tools (macOS 10.13) for Xcode 9.2 - Dec 4, 2017