关于goland2021.1无法debug的问题解决方案

来到这里的看官估计要喷我了,心想估计又是千篇一律的复制的文章,这里告诉你,让您失望了。

初转go,发现无法debug根本没法干活,难受,旁边的小老弟dubug的飞起,咱老干部在这干着急啊,幸好时间已经是周五了,决定在家一定要好好搞一搞这玩意。

IDE的部分问题没截图(没心情啊,失落),除问题时的配置我大概说一下:

go version: go1.16.8 darwin/amd64

goland:2021.1.2,依稀记得看版本信息里有个x86_64

mac:11.5.1,M1

当我debug我的go程序的时候,提示里有类似

goland failed to allocate vm space for aot

的错误,且goland有时候总是停在一个runtime_xx.什么的文件里,一脸懵。

好的,今天我花了一上午+半个下午的时间,搞定了。问题的主要原因就是因为mac的这个M1芯片问题,很多软件还不太支持,需要细心搭配才行。

我根据以上的问题,去网上查了下,然后就是各种更新软件,各种配置,谈到的主要是说以下几类问题以及解决方案:

问题1.Goland版本不对,需要下载符合M1的对应版本

我的新版本:

 

(我原来出上面的错误提示是2021.1,操作完这个步骤后debug出现了这个提示“goland Debugging programs compiled with go version go1.16.8 darwin/amd64 is not supported. Use go sdk for darwin/arm64”)

 问题2.Goland本身提供的debug工具dlv不太行,需要自己再去下载然后重新编译安装,然后配置IDE,具体方法

git clone https://github.com/go-delve/delve.git
cd delve/cmd/dlv/
go build
go install

(dlv版本:Delve Debugger Version: 1.7.2)

弄完后,就有一个dlv的可执行文件了,需要放到你的$GOPATH/bin里去
(有一篇文章提到,需要在$GOPATH/bin下面再建一个macarm文件夹,然后把这个dlv可执行文件再拷贝进去,不知道有没有效果,
反正我操作了。)
现在还需要一步,就是配置你的goland:($GOPATH替换成你实际的go安装目录)

Help → Edit Custom Properties
增加以下代码:
dlv.path=$GOPATH/bin/dlv

Help → Edit Custom VM Options
-Ddlv.path=$GOPATH/bin/dlv

(这个方法我是在我的2021.1版本上操作的,操作完后好像并没有什么*用???所以我后来把这两个配置都删除了

问题3。还有一部分网友说是go的版本问题,说是go1.16以前的版本不支持m1,1.16才开始,可是我的go是1.16.8,没毛病啊???我在尝试了以上网上说的办法都没用后,没法,我小心翼翼地把我的go版本从1.16.8降到了1.16.3(具体降的方法就是直接下载对应版本安装即可)

为什么是1.16.3?因为网上提到的解决方案都是那幅图(😭😭😭)

在这里插入图片描述

 奇迹出现!装了这个版本,竟然立马就好了!神奇!我也不知道发生了什么,反正就是好了,能debug了,能看到变量了

鬼知道经历了什么

 

好了,总结一下:

我觉得解决问题的话先将go版本安装到1.16.3,如果不能debug,将IDE升级到2021.2且要是支持M1的版本,应该就可以了!

希望看到这篇文章的朋友,你的问题能早日解决,不能debug真是太难受了

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值