如何用eclipse调试c++子进程程序
我刚开始学习在linux下使用eclipse编写调试c++程序,现在有个问题想请教各位高手.
我现在要写一个程序B,它是A程序的子进程,必须通过A程序才能正确启动B程序.我现在没有A程序的源码,不知道这种情况下怎么设置
eclipse,才能调试B程序?
我原来一直用VC,在VC中这种情况很简单,只要设置在调试的时候启动A程序即可,当运行到B程序的时候自动就进入B程序的调试状态,
就和调试动态库的方法是一样的.我觉得eclipse应该和这个差不多,但是不知道怎么设置,请各位高手帮忙.
我看了一下eclipse的帮助文档,eclipse应该也是调用gdb实现可视化调试的.如果哪位大哥知道如何直接使用gdb调试这种情况的,也
请指点一下,谢谢.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
自顶一下.
本帖最后由 雨过白鹭洲 于 2011-05-03 10:22 编辑
要在Eclipse CDT中调试子进程,可以通过启用follow-fork-mode来实现。
在当前项目工作目录下建一个.gdbinit文件,里面加入下面语句:
set follow-fork-mode child
然后在子进程的代码入口处设一个断点,应该就可以跟踪调试了。。
刚刚试了一下,是可以的。父进程最后记得waitpid一下
set follow-fork-mode mode
mode
指定为parent,表示调试父进程
指定为child,表示调试子进程
指定为ask,则gdb会询问你要调试哪个进程