2011-12-05 56 views
0

这是this thread的后续行动 - 遗憾的是我当时没有取得任何进展,所以我想我会重新开始。我一直在调试日志中获得这个(QtCreator 2.3.1,4.7.3的Qt,GDB 7.2):Qt无法找到调试帮手

A syntax error in expression, near 0'.\n" 295^error,msg="A syntax error in expression, near 0'." &"Python scripting is not supported in this copy of GDB.\n" 296^error,msg="Python scripting is not supported in this copy of GDB." &"Python scripting is not supported in this copy of GDB.\n" 297^error,msg="Python scripting is not supported in this copy of GDB." &"Python scripting is not supported in this copy of GDB.\n" 298^error,msg="Python scripting is not supported in this copy of GDB." &"Undefined command: \"bbsetup\". Try \"help\".\n" 299^error,msg="Undefined command: \"bbsetup\". Try \"help\"." dThe debugging helper library was not found at . &"source /home/matt/QtSDK-4.7.3/pythongdb/gdb\n" &"/home/matt/QtSDK-4.7.3/pythongdb/gdb:1: Error in sourced command file:\n" &"Undefined command: \"\". Try \"help\".\n" 300^error,msg="/home/matt/QtSDK-4.7.3/pythongdb/gdb:1: Error in sourced command file:\nUndefined command: \"\". Try \"help\"." &"Undefined command: \"bbsetup\". Try \"help\".\n" 301^error,msg="Undefined command: \"bbsetup\". Try \"help\"." dThe debugging helper library was not found at . 302^done <303set substitute-path /var/tmp/qt-src /usr/include

的具体问题是,没有调试帮手,我无法看到的内容QStrings和其他许多数据结构在调试过程中,这使得它更加耗时。上面的错误信息是有症状的,当gdb找不到调试助手时会出现问题。

无论如何,看上面的线程中的答案中引用的讨论,我在我的系统上搜寻了不同版本的gdb,但它们中的每一个都产生了相同的错误(当然路径改变了),包括我下载它时版本7.3.1。我也找到libDebuggingHelper.so,但将它粘在不同的地方也没有帮助。最后看看./configure --help for gdb,我没有看到在构建中启用/禁用python的任何选项。任何人都知道我如何才能使这个工作?

回答

2

This site索赔需要使用

./configure --with-python 
+0

我想这一点,得到了'检查是否使用Python ...是 检查蟒蛇...(缓存)在/ usr/bin中/ Python的 的python2.6的检查......没有 配置:错误:蟒蛇在$ sudo make install后缺少或不可用。但'$ cd/usr/bin','$。/ python'说我使用的是2.6.5版本。知道交易在那里? –

+2

你需要安装'python-2.6-dev'包。 'python'本身来自'python-minimal'或其他某些类,并且不足以开发依赖于'libpython'(比如GDB)的东西。 –

+1

@雇佣俄罗斯呜呼!这工作。问题解决了。注意'sudo apt-get install python-dev'是必要的命令。 –

1

这是从您构建的GDB不具有Python支持编译错误消息。

很清楚在gdb/config.log样子像checking whether to use python消息,看看为什么GDB决定你的系统上没有使用Python。

也许你需要安装Python开发包?

配置完GDB使用Python,一个简单的方法来检查是否Python支持是正确的编译是:

(gdb) python print "hello" 

如果打印以外的任何其他hello,你还是不是你想成为。

0

配置GDB我解决了这个问题

sudo apt-get install gdb-multiarch 

感谢@雇俄罗斯让我检查,如果确实GDB有Python支持。

我也必须使用语法

(gdb) python print("Hello") 

要想从蟒蛇GDB中作出恰当的回应。