是否可以在 eclipse CDT 中将调试会话附加到正在运行的程序
Posted
技术标签:
【中文标题】是否可以在 eclipse CDT 中将调试会话附加到正在运行的程序【英文标题】:Is it possible to attach a debugging session to a running program in eclipse CDT 【发布时间】:2010-10-13 22:34:18 【问题描述】:我正在编写一个 netscape iplanet 插件(在使用 eclipse 的 solaris/C 上),它基本上是一个具有特定入口点的共享对象,我希望能够使用 eclipse 的调试器 (gdb) 调试共享对象。 我记得在 AIX 中做过类似的事情,您可以将 xldb 附加到正在运行的进程。是否可以让 eclipse 运行 gdb 以附加到正在运行的二进制文件? 我应该因为我想调试一段动态加载的代码而感到悲伤吗?
【问题讨论】:
你试过***.com/questions/655853/…吗? 【参考方案1】:是的。您需要转到启动配置对话框并选择“C++ 附加到...”。根据您的 Eclipse 版本,可能只有一个或多个“C++ 附加到...”变体可用。
【讨论】:
【参考方案2】:我将 Eclipse CDT 用于 HP/UX 远程环境。我不确定它是否适合你:
让您的应用在 unix 上运行
转到运行/调试配置/C/C++ 附加到远程
单击“调试”,将显示进程列表
选择要调试的进程。
【讨论】:
在第 1 步中,如何确保应用程序不会运行超过我想要调试的点? (在 HP-UX 上) 您好,您能指定您使用的是哪个插件吗?我在 C++ 附加到远程的调试配置下找不到任何选项我有 C++ 远程应用程序。 @Hassaan 嗨,你可以写 int x = 1; while(x) sleep(1000); 这将确保代码在某个地方停止。如果符号文件被加载并映射,那么您设置的任何断点都将被命中并像魅力一样工作。以上是关于是否可以在 eclipse CDT 中将调试会话附加到正在运行的程序的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 gdbserver 的情况下使用 Eclipse CDT 进行远程调试?
Eclipse CDT:线程在调试模式下获取 SIGPIPE
使用 Eclipse CDT/RSE/RDT 远程调试 C++ 应用程序