2011-09-03 177 views
2

我写了一个小单元测试框架,它使用python动态加载共享库并在其上调用测试方法。我能够通过执行调用通过我的构建脚本单元测试:使用gdb调试动态加载的共享库

make test_library 

制作然后产卵蟒蛇与调用我的测试方法的脚本。这很好,但我无法用GDB进行设置,所以我可以调用相同的make目标,但是当我的库测试代码到达时GDB会中断。有关如何最好地去解决它的任何建议?这全部在linux上。

谢谢

+0

如果让库睡眠,可以使用GDB“附加”到现有进程。 – Flexo

+1

要回答我自己的问题,gdb可以很好地与动态加载的库一起工作。您可以在加载任何符号之前设置断点,一旦在共享库中找到匹配符号,gdb就会执行正确的操作。我遇到的问题是我将make指定为可执行文件,并且这是不正确的,因为它实际上是加载我的库的Python。一旦我纠正这一切只是工作。 – samwise

+0

是的,课程gdb作品使用共享库查找!问题是,你是如何设定(而且可能是失败)来设定所需的断点?你还没有告诉我们...... – paulsm4

回答