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:Install/Update 工具:
cmd + shift + p
Go: Install/Update Tools
这应该允许您 运行 并通过 VS Code 成功调试。
对在 Go 中看不到“dlv”的人的补充回答:Install/Update 工具
有 2 个解决方案
从 go/bin 中删除“dlv” -> 重新打开 VSCode -> 运行 调试器 -> 从 VSCode 通知中安装“dlv”
尝试使用
手动更新
go install -v github.com/go-delve/delve/cmd/dlv@latest
希望对大家有所帮助:)
我可以 运行 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:Install/Update 工具:
cmd + shift + p
Go: Install/Update Tools
这应该允许您 运行 并通过 VS Code 成功调试。
对在 Go 中看不到“dlv”的人的补充回答:Install/Update 工具
有 2 个解决方案
从 go/bin 中删除“dlv” -> 重新打开 VSCode -> 运行 调试器 -> 从 VSCode 通知中安装“dlv”
尝试使用
手动更新go install -v github.com/go-delve/delve/cmd/dlv@latest
希望对大家有所帮助:)