在GDB中打印出GHashTable
|
我正在尝试以干净的方式在GDB中打印出GHashTable。我在Archer项目上找到了一个博客,该博客显示了很好地打印GHashTable的功能:
http://blogs.gnome.org/alexl/2009/09/21/archer-gdb-macros-for-glib/
据我了解,该Archer项目功能已推入GDB主流。
在GDB中,我这样做:
set print pretty on
然后我尝试打印出哈希表,但它仍然只给我一个内存地址:
(gdb) print call_data->fields->field_indicies
$3 = (GHashTable *) 0x87f4580
如果尝试取消引用GDB中的指针,则会得到不完整的类型:
(gdb) print *call_data->fields->field_indicies
$2 = <incomplete type>
我正在运行Ubuntu,并且已安装libglib2.0-0-dbg:
gnychis@qc2:~/Documents/wireshark_native$ sudo apt-get install libglib2.0-0-dbg
Reading package lists... Done
Building dependency tree
Reading state information... Done
libglib2.0-0-dbg is already the newest version.
有谁知道我还能打印出来吗?还是为什么我没有适当的glib和gdb支持?
没有找到相关结果
已邀请:
1 个回复
妊辽剁茧
。如果未列出任何“ 6”个文件,则缺少漂亮的打印机。如果是这样,它们可能存在,但是GDB找不到它们。 似乎已在此处添加了用于GHashTable的漂亮打印机。