无法在 Mac M1 上使用 VS 代码运行调试 Go

我发现一个主题遇到同样的问题(无法在vscode apple m1中调试Golang),但我不确定这是不是一个旧的解决方案,因为我使用的是Go版本

go1.17.1 darwin/arm64

dlv version 1.7.2

VSCode version 1.60.2 (arm64)

Mac M1 BigSur (11.6)

当我运行调试 () 时,调试控制台显示:fn+f5

Starting: /Users/username/go/bin/dlv-dap dap --check-go-version=false --listen=127.0.0.1:53115 --log-dest=3 from /Users/username/go/src/project-name
DAP server listening at: 127.0.0.1:53115

并出现一个弹出错误:

Failed to launch: could not launch process: can not run under Rosetta, check that the installed build of Go is right for your CPU architecture

我尝试过将go版本降级到1.16.8 arm64与dlv 1.6.1,但仍然得到相同的错误。

我可以在两个版本上成功使用go构建。


慕婉清6462132
浏览 274回答 5
5回答

慕沐林林

确保您的 VS 代码使用 arm64 版本。(它可以使用与系统不同的go版本)运行 Go:安装/更新工具。它将使用arm64 go版本重建所有工具。

森林海

以下是我如何解决此问题。卸载高浪(AMD-64版)。安装高浪(ARM-64)。确认go env GOARCH从(重要)二进制文件中删除(VS 代码使用的工具)$GOPATH/bin)重新启动 VS 代码并安装 VS 代码所需的工具(如果未安装 vscode,则会抱怨并要求您安装它们)问题的根本原因:我不小心安装了版本,而不是我的.amd-64arm-64Apple Mac M1感谢佩恩哈德科的答案为我指明了正确的方向。

富国沪深

什么对我有用:检查您的Mac正在使用的“芯片”,您可以从中检查"About This Mac" > "Overview" > "Chip"如果使用苹果芯片,则下载“arm64”类型的文件,例如“去达尔文-arm64.pkg”,“vscode-arm64”等。你明白我的观点。如果使用英特尔芯片,请使用“amd”类型下载。从 https://github.com/go-delve/delve/tree/master/Documentation/installation 下载并安装“DELVE”运行调试器。让我知道,如果你也想要“launch.json”文件配置,调试。编辑 11-04-22共享启动。{    // 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": "Debug",            "type": "go",            "request": "launch",            "mode": "auto",            "program": "${workspaceFolder}/main.go",            "args": [],        }    ]}

天涯尽头无女友

这个答案对我有用。已安装 ARM64 并重试。https://github.com/go-delve/delve/issues/2604#issuecomment-1069740132

守着一只汪

从 https://github.com/go-delve/delve/tree/master/Documentation/installation 下载并安装DELVE它对我有用
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go