【问题标题】:Go Build with Debug mode in Visaul Studio Code在 Visual Studio Code 中使用调试模式构建
【发布时间】:2022-01-05 14:35:33
【问题描述】:

问题不是如何调试,而是如何在架构和版本上设置调试器。

我不想更新 go without rosetta,它必须在相同的设置上运行。

这是系统,

  1. Go 版本 1.16(不是最新版本)
  2. 带有 Rosetta 终端的 Mac M1。

这里是

launch.json

文件。

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "remotePath": "",
            "program": "${workspaceRoot}",
            "env": {},
            "args": [],
            "showLog": true
        }
    ]
}

【问题讨论】:

    标签: go visual-studio-code apple-m1 rosetta


    【解决方案1】:

    如错误消息所示,确保您的 Go 工具和 VSCode 是 M1 (darwin/arm64) 的版本。

    【讨论】:

    • 我看到错误,由于其他一些 brew,我有 Rosetta 终端。有什么办法可以添加另一个 GO 拱门?我有 GOARCH="amd64" 我不想删除 amd64 go arch。
    • 抱歉,delve(Go 调试器)不支持这种设置。
    【解决方案2】:

    几周前我在我的 Macbook Pro M1 上使用 VS Code 调试应用程序时遇到了同样的问题,没有任何额外的配置。我能够通过这些步骤修复它(以防它帮助其他人)

    • 使用 https://golang.org - https://go.dev/dl/go1.18.darwin-arm64.pkgARM64 安装包重新安装 GO(安装程序已经负责删除以前的版本)
    • 重新安装您的 Go 可视化代码扩展
    • 重新安装 Delve(go 调试器),您可以通过从命令行运行 go install github.com/go-delve/delve/cmd/dlv@latest 来完成。
    • 重新安装 gDelve(用于 delve 的 GUI),您可以通过从命令行运行 go install github.com/aarzilli/gdlv@latest 来完成此操作。
    • 重启你的 VS 代码

    虽然第一步应该足以与 M1 处理器架构完全兼容,但使用 VS Code 调试应用程序是不够的,因为之前安装的 Delve 版本可能不是正确的版本。

    【讨论】:

    • 我需要 amd64 arch golang 版本。它适用于这个环境吗?
    • 我的 Mac 中有 M1 芯片,使用 amd64 架构,我能够运行应用程序但不能调试它们。但是你应该尝试,安装和重新安装不同版本的 go 很容易而且不会花费太多时间
    猜你喜欢
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    • 2022-08-11
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多