我为这个问题困扰了3天,现在解决了,我要把解决方法写出来,避免各位再去无谓地google。
0x1 GDB printer python
这个东西估计很多人都听说过。GDB 7.7已经支持了很多python接口,用这些接口可以实现很多gdb扩展。而GDB printer python就是用来把stl print得更加漂亮的。如果不用它,print命令会给你一堆你看不懂的东西,而用了它,它会把vector向数组那样显示出来,还会给出size和capacity,真是太好用了。
根据GDB官方的安装指导页面,好吧,我来翻译一下:
首先你要把它从svn上checkout下来,
svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python
然后在 ~/.gdbinit 里把这个东西填进去,启用它,
python