使用Eclipse CDT调试问题 - 执行和GUI未对齐

Ita*_*atz 5 c++ eclipse gdb eclipse-cdt

我正在使用Eclipse CDT在Ubuntu中调试C++项目.GUI,即显示要执行的下一行源代码的小箭头,与实际执行不对齐.具体来说,它比实际执行线低约30行.我通过检查局部变量的值以及它们何时发生变化来确定实际线路是什么.

我已经尝试多次清理项目,包括手动删除所有编译的对象代码,库等,希望它会导致Eclipse自行更新,但它坚持显示错误的行.

任何帮助表示赞赏.

Emp*_*ian 5

看起来很可能Eclipse正在显示的源,以及实际用于编译可执行文件的源是同一文件的不同版本.

您可以询问GDB(Eclipse有一个GDB控制台窗口)实际用于构建可执行文件的源代码,以及GDB使用info sourceGDB命令找到它(向Eclipse)显示的源代码.我敢打赌Compilation directory + Current source file != Located in.

  • 正如在这些情况下经常发生的那样(当机械师来时,汽车工作正常......),我今天早上回到了项目,问题似乎消失了.你的解决方案听起来是正确的,但是我无法理解为什么Eclipse不是确定性的,因为昨天没有任何变化(没有重启或任何事情),但它的行为是不同的.我现在正试图重现这个问题. (2认同)