使用汇编代码在 GoClipse 中调试 Go 程序
尝试在 GoClipse 中调试 Go 程序时,用户可能会遇到调试器无法正常运行的问题单步执行汇编代码而不是 Go 代码。尽管正确安装了 gdb 进行调试,但还是会出现这种情况。
设置断点并通过 Eclipse 调试器运行程序时,它会输入“rt0_darwin_amd64.s”等汇编代码文件,并重点关注“MOVQ $_rt0_go”等行(SB),AX。”此行为可能会使调试变得困难。
要解决此问题,请在 Go 程序停止时验证“调试”视图的内容。如果它显示以“main() at rt0_darwin_amd64.s”开头的堆栈跟踪,则表明调试器已在用 C 编写的内部运行时“main”函数处暂停。
此行为由第一个控制启动配置选项中的选项。要解决此问题,请将选项设置为“main.main”以在实际的 Go main 函数处停止,或者简单地取消选中该选项。
或者,如果调试器在内部运行时“main”函数处停止,您可以单击“运行/恢复”(F8) 继续执行。这将允许您按预期单步执行 Go 代码并进行调试。
以上是在GoClipse中调试Go程序时如何避免进入汇编代码?的详细内容。更多信息请关注PHP中文网其他相关文章!