【初级入门】Go M1不能Debug

这里记录下,M1不能Debug的解决方案


查看安装环境是否正确

go语言环境和GoLand编辑器最新版已经支持了Debug,如果安装了最新版仍然不能debug, 请检查对应的Go语言环境是否和GoLand匹配
查看Go环境
$ go version

输出如下:

 go version go1.16.5 darwin/amd64

但是笔者这里安装的GoLand是Mac M1版本的,也就是arm架构,所以笔者debug不能使用,然后卸载 go语言环境,重新安装即可正常使用

arm版本输出如下:

go version go1.16.5 darwin/arm64

查看debug工具是否正常

如果按照上面的配置,还是没有解决问题,报错如下:

GOROOT=/usr/local/go #gosetup
GOPATH=/Users/xiong/go #gosetup
/usr/local/go/bin/go build -o /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort -gcflags all=-N -l quicksort #gosetup
/Applications/GoLand.app/Contents/plugins/go/lib/dlv/macarm/dlv --listen=0.0.0.0:65304 --headless=true --api-version=2 --check-go-version=false --only-same-user=false exec /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort --
API server listening at: [::]:65304
debugserver-@(#)PROGRAM:LLDB  PROJECT:lldb-1205.0.27
 for arm64.
Got a connection, launched process /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort (pid = 9182).

分析原因:
注意分析关键字 /Applications/GoLand.app/Contents/plugins/go/lib/dlv/macarm/dlv, dlv是golang的debug工具,所以这里是debug工具的问题

解决:
1.去github上下载debug工具delve, 或者使用如下命令安装
go install github.com/go-delve/delve/cmd/dlv@latest

安装完成后会在你的$GOPATH/bin目录下生成一个dlv二进制文件(查看GOPATH路径 go env)

2.在$GOPATH/bin目录下新建macarm目录, 将dlv二进制文件移动到macarm目录下

3.需要去goland里面去设置,点开HELP--Edit Custom Properties, 他会提示我们创建一个文件,然后我们在其中添加一行:

# custom GoLand properties, 注意这里必须用绝对路径,不能用变量如 $HOME
dlv.path=你的gopath目录/bin

4.最后重启goland就可以愉快的debug啦


参考:

M1 Debug无法调试问题

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文由Florin Pățan于2019年2月6日发表 调试是任何现代应用程序生命周期的重要组成部分。它不仅有助于...
    癞痢头阅读 16,954评论 4 6
  • 问题描述 今天把Go从1.12版本升到了1.14,然后发现在Goland进行Debug时就报错了。 环境说明 Go...
    岑吾阅读 13,491评论 1 5
  • Go语言安装 Linux可以在Go语言官网https://golang.org/dl/[https://golan...
    wayyyy阅读 5,179评论 0 0
  • 1 go环境配置 1.1 下载go的安装包 1.2 配置环境变量 1.3 创建规范的目录结构 说明: src目录中...
    攻城老狮阅读 12,125评论 0 3
  • 大家好,我是小栈君,好久没更新文章了,确实抱歉!因为工作变动等原因导致最近拖更严重,但是请大家放心,我会一如既往的...
    IT干货栈阅读 2,920评论 0 0