首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >调试符号存在,但eclipse不会将它们与源代码相关联。

调试符号存在,但eclipse不会将它们与源代码相关联。
EN

Stack Overflow用户
提问于 2011-06-25 12:54:23
回答 1查看 1.8K关注 0票数 1

我正在修改一个相当大的程序(NS2网络模拟器),如果能用Eclipse调试它就好了。我配置了makefile(将-g添加到CFLAGS ),让gcc生成调试符号,它们确实是生成的,但是Eclipse拒绝实际查找与这些符号关联的代码。我使用"Makefile Project with Existing Code“导入了巨大的源代码文件夹,当我点击"debug”时,它会运行程序。当我告诉调试器停止时,它通常会在我识别的方法中停止,但当我单击该方法的名称时,它会显示"source not available“,即使定义该方法的源文件实际上是在另一个选项卡中打开的。我确实有所有的源代码导入到项目中。我在make配置中遗漏了什么吗?

^冗长的令人困惑的解释,我知道...查看屏幕截图,:http://imageshack.us/photo/my-images/651/zzz1fu.jpg/

请注意,上面屏幕截图中的IPKTAgent::deBurst()是在integrated_agent.h中声明的--这是我在other选项卡中打开的文件。

此外,当我在项目资源管理器中展开我正在调试的可执行文件的条目时,它只列出了组成它的一些文件。怎么回事?(见截图,列表上应该有更多的文件,我正在处理的文件丢失了)。截图:http://imageshack.us/photo/my-images/96/zzz2z.jpg/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-25 20:08:49

只是测试了一下。这对我很有效。唯一的问题是,我忘记添加-O0选项来禁用优化;在您的情况下,这也可能是一个问题。

我的建议是:

  • 尝试禁用optimization
  • Check以确保您使用的编译器选项是实际应用的。您使用CFLAGS,但我在标记中看到了c++,因此您可以使用CXXFLAGS (这取决于您在integrated_agent.h中声明的构建工具)。但是它在哪里实现呢?检查它是在头文件中实现的,或者你可以访问源文件,在那里你可以使用gdb
  • 调试你的可执行文件,尝试创建简单的基于implemented.
  • Check /autoconf的项目,并检查你是否能够在gdb和eclipse中调试它。你应该能做到。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6475918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档