我正在尝试使用OS-X 10.9.5上的goclipse v0.11.0调试在eclipse Luna中运行的程序。我正在使用brew中的GNU gdb(GDB)7.9.1,以及go1.4.2。
我已使用以下说明成功安装并代码签名gdb
:
http://ntraft.com/installing-gdb-on-os-x-mavericks/
我正在使用-gcflags "-N -l"
构建我的go程序,我可以在命令行中成功调试它,包括在go函数中设置断点并使用gdb
命令行逐步执行它们,源代码显示为应该。
但是,在goclipse中我根本无法设置断点,因为菜单上的“切换断点”项目显示为灰色,“断点类型”列表显示“无可用”。
如果我在'main'选择'Stop on Startup',那么我可以单步执行汇编程序,这是无用的,但证明正在使用gdb。
如果我保持上面的选项设置,请等到程序到达main
断点,然后键入(在eclipse中的gdb控制台)break main.foo
,然后cont
,然后断点设置在正确的位置,我可以在Eclipse IDE中逐步完成。因此,似乎唯一的问题是在IDE中设置断点。
有关go程序是单个文件,它在命令行gdb下工作,我已经删除了二进制文件并重新开始,所以这不是“需要重建”的问题。
相关问题:How to debug Go programs using GoClipse?但是两个答案都是'禁用启动时停止'(这里没有任何区别),并确保-gcflags "-N -l"
给出(这没有区别)。
截图:
有什么想法吗?