繁体   English   中英

GO VSCode 调试器无法在带有 M1 芯片的 Apple 上运行

[英]GO VSCode debugger not working on Apple with M1 Chip

我可以运行 go 文件,但我无法在 vscode 中调试它们。

错误:“启动失败:无法启动进程:无法在 Rosetta 下运行,请检查安装的 Go 版本是否适合您的 CPU 架构”

在升级到带有 M1 的 Apple 后,我也遇到了这个问题。 有几个步骤可以诊断问题的根本原因。 首先是检查您安装的 Go 版本。

> go version
go version go1.17.2 darwin/arm64

如果版本不是darwin/arm64那么您为带有 M1 芯片的 Mac 安装了错误的架构。 这很容易做到,因为默认是darwin/amd64

如果这是问题,请卸载当前版本的 go 并安装位于此处的 arm64 等效项: https ://golang.org/dl/

安装完成后,是时候验证两个环境变量了:

在终端中:

> echo $GOOS 
darwin
> echo $GOARCH
arm64

如果未设置这些,请继续导出它们。 我建议将它们添加到您的 .zshrc 或等效文件中。

export GOOS=darwin
export GOARCH=arm64

最后,在 VS Code 中,启动您的项目并输入命令栏以重新安装所有 Go:安装/更新工具:

cmd + shift + p
Go: Install/Update Tools

这应该允许您通过 VS Code 成功运行和调试。

对在 Go 中看不到“dlv”的人的附加回答:安装/更新工具

有2个解决方案

  1. 从 go/bin 中删除“dlv” -> 重新打开 VSCode -> 运行调试器 -> 从 VSCode 安装“dlv”通知

  2. 尝试使用手动更新它

    去安装 -v github.com/go-delve/delve/cmd/dlv@latest

希望这对你们有帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM