我正在尝试为Eclipse CDT中的STL对象添加漂亮的打印输出。我尝试按照这里描述的步骤进行:
http://sourceware.org/gdb/wiki/STLSupport
我检出了python文件夹,但似乎无法完成此操作...
我创建了一个gdbinit文件并选择了我的调试配置,但每当我尝试开始调试时,就会出现以下错误:
Error while executing Python code.
!STACK 0
java.lang.Exception: /home/lizardking/workspace/eu.sofia.kpi.cpp.x86.testapp/.gdbinit:6: Error in sourced command file:
Error while executing Python code.
at org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThread.processMIOutput(AbstractMIControl.java:824)
at org.eclipse.cdt.dsf.mi.service.command.AbstractMIControl$RxThread.run(AbstractMIControl.java:662)
如果我尝试在Python shell中执行gdbinit的内容,我会收到以下错误:
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import sys
sys.path.insert(0, '/home/Documents/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named libstdcxx.v6.printers
看起来我没有这个模块......我对Python一无所知,所以我甚至不知道在Python中什么是"模块"。
有人能帮我解决这个问题吗?对于我来说能够看到真实的调试信息非常重要,或者换句话说,能够从控制台调试并获得来自gdb的良好输出也很有用,因为如果我打印一个字符串,我会得到无用的输出......
问候, Alex