我正在使用Eclipse CDT在Ubuntu中调试C ++项目。 GUI,即显示要执行的下一行源代码的小箭头,与实际执行不一致。具体来说,它比实际执行线低约30行。我通过检查局部变量的值以及它们何时发生变化来确定实际线路是什么。
我已经多次尝试清理项目,包括手动删除所有已编译的对象代码,库等,希望它会导致Eclipse自行更新,但它坚持显示错误的行。
感谢任何帮助。
答案 0 :(得分:5)
Eclipse似乎很有可能显示源代码,实际用于编译可执行文件的源代码是同一文件的不同版本。
你可以问GDB(Eclipse有一个GDB控制台窗口)实际用于构建可执行文件的源代码,以及GDB使用info source
GDB命令找到它向Eclipse展示的源代码。我打赌Compilation directory + Current source file != Located in
。
答案 1 :(得分:1)
检查您的可执行文件是否是最新的。由于某种原因,生成的makefile eclipse不包含对静态库的依赖。如果您将静态库用作项目的一部分,则可能需要手动重建它们。