Eclipse cdt 为什么我的eclipse cdt断点在添加后会立即被删除?

Eclipse cdt 为什么我的eclipse cdt断点在添加后会立即被删除?,eclipse-cdt,breakpoints,Eclipse Cdt,Breakpoints,这已经很好地工作了一段时间,并且有很多eclipse断点bug,但是这一个和其他的不一样 我可以添加一个断点,它显示在断点列表中,但一旦我创建了断点,带有检查点的小蓝点就会出现,然后检查点就会消失 这是gdb跟踪 355,448 50-break-insert -f xxx 355,448 50^done,bkpt={number="9",type="breakpoint",disp="keep",enabled="y",addr="0x0000000000435f1e"\ ,func="xxx

这已经很好地工作了一段时间,并且有很多eclipse断点bug,但是这一个和其他的不一样

我可以添加一个断点,它显示在断点列表中,但一旦我创建了断点,带有检查点的小蓝点就会出现,然后检查点就会消失

这是gdb跟踪

355,448 50-break-insert -f xxx
355,448 50^done,bkpt={number="9",type="breakpoint",disp="keep",enabled="y",addr="0x0000000000435f1e"\
,func="xxx(void const*, unsigned long)",file="xxx.cpp",fullname="xxx.cpp",line="223",thread-groups=["i1"]\
,times="0",original-location="xxx.cpp:223"}
355,448 (gdb) 
。。。然后这就发生了

355,601 51-break-delete 9
355,601 51^done
355,601 (gdb) 
我肯定这是某个配置的状态错误,我真的不在乎为什么。我已删除所有断点并重新启动, 调试器相关的缓存存储在哪里,以便我可以尝试删除它

我宁愿不必重建我的工作区

编辑: 我的gdb版本是 GNU gdb(Ubuntu 7.10-1ubuntu2)7.10

eclipse版本

面向C/C++开发人员的Eclipse IDE 版本:Luna Service Release 2(4.4.2) 构建id:20150219-0600

cdt

EclipseC/C++开发工具 版本:8.6.0.201502131403 内部版本id:@Build@

我从一台机器上复制了这个eclipse设置 使用这个版本的gdb,它工作得很好。 GNU gdb(Ubuntu7.7.1-0ubuntu5~14.04.2)7.7.1

(之前有一个答案,其中一些信息现在被删除了?)

在CDT 8.6中,有一个问题现在已经解决了。要点是CDT 8.7(月食火星)中存在一个种族条件

对于目前提出的问题。部分基于那里的信息,似乎潜在地关闭调试分叉进程可以避免Eclipse中的情况。在启动配置中,取消选中“自动调试分叉进程”,这是下面标记的最后一个选项:

(先前的回答中有一些信息,现在删除了?)

在CDT 8.6中,有一个问题现在已经解决了。要点是CDT 8.7(月食火星)中存在一个种族条件

对于目前提出的问题。部分基于那里的信息,似乎潜在地关闭调试分叉进程可以避免Eclipse中的情况。在启动配置中,取消选中“自动调试分叉进程”,这是下面标记的最后一个选项:


请告诉我们您正在使用的CDT/Eclipse、GDB和平台的版本,以便我们可以尝试跟踪它。我刚刚注意到。程序启动前存在的断点工作正常(保持活动状态)。只有在程序以调试模式启动后添加的断点在添加后立即被删除。请告诉我们您使用的CDT/Eclipse、GDB和平台的版本,以便我们可以尝试跟踪它。我刚刚注意到。程序启动前存在的断点工作正常(保持活动状态)。只有在程序以调试模式启动后添加的断点在添加后立即被删除,这对我有所帮助。一个项目可以正常工作,但我在另一个项目中创建断点时会出错。。。断点安装失败:给定的上下文:(gdb[3]。proc[23931]。线程组[i2],gdb[3]。proc[23931]。OSthread[0])。线程[0]已挂起,未能执行MI命令:-来自调试器后端的exec中断错误消息:无效的线程id:11,未能执行MI命令:-来自调试器后端的exec中断错误消息:无效的线程id:9I现在真想哭。因此,我创建了一个新的工作区,开始在中迁移项目,导入启动配置,运行它,但仍然会出现断点错误。我对此表示同情,但不幸的是,我无法解决您的问题。我知道你的痛苦,因为我也经历过。我所能推荐的就是你用新的错误信息提出一个新的问题,和/或前往cdt论坛,看看是否有其他cdt人员在那里闲逛,并能提供帮助。既然你需要了解一些关于cdt的知识,也许你可以在这里帮助我:我有一个可行的项目,一个不可行。断点的断裂是在我的新mars安装项目之后出现的。因此,导致此问题的设置位于项目设置中的某个位置。你知道我可以在.project或.cproject文件的什么地方查找问题所在,以便删除它吗?我想我缩小了范围。我发现了它正在消亡的地方,我以为它是在启动时,但事实并非如此,当我调用popen时,我得到了这个:/build/gdb-HnfxP\gdb-7.10/gdb/linux-nat.c:1773:内部错误:linux\u nat\u resume:Assertion`lp!=“NULL”失败。GDB内部的一个问题已经被检测到,这有点帮助。一个项目可以正常工作,但我在另一个项目中创建断点时会出错。。。断点安装失败:给定的上下文:(gdb[3]。proc[23931]。线程组[i2],gdb[3]。proc[23931]。OSthread[0])。线程[0]已挂起,未能执行MI命令:-来自调试器后端的exec中断错误消息:无效的线程id:11,未能执行MI命令:-来自调试器后端的exec中断错误消息:无效的线程id:9I现在真想哭。因此,我创建了一个新的工作区,开始在中迁移项目,导入启动配置,运行它,但仍然会出现断点错误。我对此表示同情,但不幸的是,我无法解决您的问题。我知道你的痛苦,因为我也经历过。我所能推荐的就是你用新的错误信息提出一个新的问题,和/或前往cdt论坛,看看是否有其他cdt人员在那里闲逛,并能提供帮助。既然你需要了解一些关于cdt的知识,也许你可以在这里帮助我:我有一个可行的项目,一个不可行。断点的断裂是在我的新mars安装项目之后出现的。因此,导致此问题的设置位于项目设置中的某个位置。你知道我可以在.project或.cproject文件的什么地方查找问题所在,以便删除它吗?我想我缩小了范围。我发现了它正在消亡的地方,我以为它是在启动时,但事实并非如此,而是在我给popen打电话时,我得到了这个:/build/gdb-HnfxP\u/gdb-7.10/gdb/l