解决M1芯片 MAC 下 Goland(Intellij系列都适用) 无法 Debug 的问题

解决M1芯片 MAC 下 Goland(Intellij系列都适用) 无法 Debug 的问题

报错信息如下:

error: failed to allocate vm space for aot

解决思路:

网上查了很多资料,有些说的是需要安装最新的dlv因为最新的dlv才支持M1芯片的mac,所以操作如下:

  1. 安装dlv
brew install dlv
  1. 查看dlv路径
which dlv
  1. 复制dlv所在路径,修改goland的配置,help->Edit Custom Properties,增加一行(注意:“=”后面的路径要根据你自己的电脑取到的路径进行配置):
dlv.path=/opt/homebrew/bin/dlv
  1. 修改完成后,重启IDE

然而,重启后debug还是无法正常运行,报错信息有所改变,于是又去查资料找原因,说的是要使用最新的goang1.16来手动编译dlv才行,所以又去尝试了一下。最后无果,依然无法debug。

忙活了一段时间,决定去官网看看,发现goland最新版是支持了M1芯片,按理来说不应该会出现这种问题,于是突然想到,查看了一下自己本地的goland版本,因为我也是最近才下载的应该是最新的,但是不看不知道,一看就明白了:我本地安装的goland不是适配M1芯片的,还是Intel版本的,这个比较坑。

附:官网下载链接

下载的时候需要注意一下,勾选M1芯片的版本,即arm的。下载安装后,打开重新debug运行程序,发现没有问题了。(注意:官网这里有个bug,即选择了apple silicon 页面显示的还是intel,你可以注意一下下载的文件名是否是对的)
选择m1

附:如果有出现protocol error e09 during set breakpoint for packet问题,则是golang的版本不对,同理,卸载现有golang,去官网下载最新版本的golang并且选择arm的版本。官网下载链接

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐