解决Mac M1芯片Goland的debug报错问题

3,879 阅读1分钟

遇到的问题

在部署Gin开源框架Gin admin工程的时候遇到一个棘手的环境问题,GoLand不能Debug。

我的环境:

Mac系统及芯片Goland版本Go版本
MacBook Pro (13-inch, M1, 2020)image.pngGoLand 2022.1.1 aarch64(M1芯片)go version go1.16.15 darwin/amd64

发现问题:

Goland启动项目的时候,一切正常,可以正常运行,但是Debug的时候,报错:

错误信息如下:

运行'go build ferry'时出错:
不支持调试使用 go version go1.16.6 darwin/amd64 编译的程序。对 darwin/arm64 使用go sdk。

image.png

通过错误信息的提示,其实问题非常明显,就是我们使用的go sdk与安装的goland不匹配导致Debug运行失败。

解决:

尝试百度及Google出来的文章中的教程,浪费了2个小时时间,最终自己完美解决。

方法如下:

  1. 因为机器本身是M1芯片,所以安装的Goland不需要变动,保持即可;
  2. 当前使用的go sdk版本均为darwin/amd64环境编译,所以这个问题出在这个地方,浪费的时间也主要在这里;
  3. 知道问题了,答案也就很明显了,下载对应的arm64编译后的go sdk,应该可以解决;
  4. Go SDK下载地址:
  1. 下载后安装

  2. 安装成功后,修改Mac系统环境变量,切换本地go的版本为 go version go1.16.15 darwin/arm64

  3. 启动Goland,修改go sdk配置 image.png

  4. 再次Debug工程,成功 image.png