gdb交互式控制台:查找共享库的可用列表

时间:2012-12-14 03:55:52

标签: c++ linux gdb

我需要在交互式控制台上使用gdb调试C ++应用程序(使用g ++ - 4.5编译)。除了start,list和bt命令之外,我对它知之甚少。我不是要求有关它的教程,因为我发现很多我的老朋友谷歌。我只是需要一些帮助,或者在帮助或参考资料中找不到的东西。

C ++应用程序是一个UnitTest ++运行器,它链接了几个共享库。所有这些库都使用适当的标志来构建调试信息(-ggdb -O0),我只需要一种方法在其中一个共享库的某个源文件中设置断点。我不确定我应该如何导航到该列表并设置断点

还有任何想要伸出援手的gdb大师吗?

1 个答案:

答案 0 :(得分:0)

在gdb中设置断点使用break命令。您也可以使用别名b

示例,如果您想在file.cpp

中的第61行中断

(gdb) b file.cpp:61

OR

(gdb) b "file.cpp":61

如果你想破解一个类中的方法,在gdb提示符下输入类名,然后按tab键,它会显示该类中的所有方法,然后可以像这样设置断点。

display()

中的方法class Foo示例

(gdb) b Foo::display()

如果您想要更具交互性/ GUI模式,请使用Data Display Debugger(DDD)或转到Eclipse CDT

要查看加载的共享库的状态,请使用info shared