在Eclipse上让GDB对C++ stl容器进行漂亮打印的方法

3

当我输入"show version"时,gdb会显示以下内容:

GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-23.el5_5.2)

我按照这个网站的说明为Eclipse设置漂亮打印:

http://wiki.eclipse.org/CDT/User/FAQ#How_can_I_inspect_the_contents_of_STL_containers.3F

当我尝试使用我的新.gdbinit文件启动gdb时,出现以下错误:

Error in sourced command file:
Python scripting is not supported in this copy of GDB

那么我就开始寻找一种启用这个功能的方法。我的版本是7.0以上,所以应该支持Python脚本编写。GDB官网提到需要使用--with-python选项来调用GDB配置脚本。然而,在我的系统中并没有看到任何配置脚本。由于有多名开发人员使用这台机器,因此我不想重新安装GDB或进行其他类似的操作。有没有一种方法可以配置现有的GDB安装以启用python脚本编写呢?谢谢!


1
你需要重新编译带有该选项的gdb - 这不是运行时选项。 - dwerner
有没有办法运行我自己的gdb版本,以便不影响其他开发人员?最好的方法是什么? - user1040229
我将我的回复添加为答案。 - dwerner
1个回答

5
为了帮助您开始使用,您可以在单独的目录中编译GDB,并从那里运行它。 获取您需要的版本的源代码:http://sources.redhat.com/gdb/ 使用--with-python运行./configure,然后make,但不要覆盖系统副本。 在这一点上,您应该能够调用gdb,其中已经构建了./builddir/gdb,而不是您路径中的那个(如果您想从那里调用它,则应将eclipse调试指向此处)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接