码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • mac m1 配置goland debbug


    大概率无法使用goland的debug功能,如果自己安装没选对路径,也无法使用。原因是:

    go env 配置不对,需要指向 ARM64;
    dlv版本不对,需要使用 arm64 系列;
    dlv路径不对,需要使用 macarm 路径;
    
    • 1
    • 2
    • 3

    文章目录

        • 大概率无法使用goland的debug功能,如果自己安装没选对路径,也无法使用。原因是:
    • 操作步骤
          • (一)配置go env
          • (二)选择支持m1的goland版本
          • (三)安装arm64版本dlv
          • (四)配置dlv路径
          • (五) 打开goland,配置dlv的执行路径: 选 `help>>Edit Custom Properties`
        • macarm 目录

    操作步骤

    (一)配置go env

    确保go是arm64版本。

    go version
    go version go1.17.5 darwin/arm64

    若不是amd64版本,请更换,网上很多教程。

    确保这个选项正确:GOARCH=arm64
    在这里插入图片描述
    备注:因为后面编译需要用(源码安装),编译dlv的arm64版本,必须配置。编译完毕可以改回原来的值。

    go env -w GOARCH=arm64

    (二)选择支持m1的goland版本

    截止2022.03,goland已经支持m1芯片,确保安装的是这款:

    (三)安装arm64版本dlv

    可能有的人已经安装了div ,但是报权限不足的问题,可直接移步(四)

    使用【迁移助理】操作,dlv大多是amd64版本,是无法直接在 mac m1 用的。

    安装 arm64 版本 dlv 方式一般有两种,brew安装或源码安装。此处强烈推荐源码安装。

    源码安装方法:

    > git clone https://github.com/go-delve/delve
    > cd delve
    > go install github.com/go-delve/delve/cmd/dlv
    
    • 1
    • 2
    • 3

    网上会介绍切到darwin-arm64-lldb分支,arm64版本go配合master没问题的,推荐使用。
    验证dlv版本:

     dlv version
    Delve Debugger
    Version: 1.8.0
    Build: $Id: 6a6c9c332d5354ddf1f8a2da3cc477bd18d2be53 $
    
    • 1
    • 2
    • 3
    • 4
    (四)配置dlv路径

    1、打开 $GOPATH/bin 目录,新建macarm 路径, echo $GOPATH/bin可以获得真实路径
    2、将步骤(三)得到dlv文件拷贝到macarm目录里:

    > cd /Applications/Goland.app/Contents/plugins/go/lib/dlv/macarm/div (div 路径)
    > cp dlv $GOPATH/bin/macarm
    
    • 1
    • 2
    (五) 打开goland,配置dlv的执行路径: 选 help>>Edit Custom Properties
     custom GoLand properties (expand/override 'bin/idea.properties')
    dlv.path=$(你的GOPATH)/bin
    
    • 1
    • 2

    macarm 目录

    cd /Applications/Goland.app/Contents/plugins/go/lib/dlv/ 包含5个目录,macarm目录是m1 使用的

    在这里插入图片描述

  • 相关阅读:
    『C++成长记』C++入门——命名空间&缺省参数
    failed to solve with frontend dockerfile.v0: failed to create LLB definition:
    电脑技巧:Win7、Win10、Win11如何选择,看完你就懂了
    周四见|物流人的一周资讯
    Vue计算属性的使用
    【Java PTA作业】当老师一口气布置八个作业( 5 / 8 )
    OD华为机试 20
    微信小程序:实现音乐播放器的功能
    【开发篇】十二、缓存框架JetCache
    融入Facebook的世界:探索数字化社交的魅力
  • 原文地址:https://blog.csdn.net/lxy4239/article/details/128010170
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号