我正在修改一个相当大的程序(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/
发布于 2011-06-25 20:08:49
只是测试了一下。这对我很有效。唯一的问题是,我忘记添加-O0
选项来禁用优化;在您的情况下,这也可能是一个问题。
我的建议是:
CFLAGS
,但我在标记中看到了c++,因此您可以使用CXXFLAGS
(这取决于您在integrated_agent.h
中声明的构建工具)。但是它在哪里实现呢?检查它是在头文件中实现的,或者你可以访问源文件,在那里你可以使用gdb https://stackoverflow.com/questions/6475918
复制相似问题