如何修复“此 GDB 副本不支持 Python 脚本”

Hi-*_*gel 5 python configuration gdb

configure脚本是这样启动的

./configure --with-python=yes  --host=arm-linux-gnueabi
Run Code Online (Sandbox Code Playgroud)

这样,python就启用了。另外,在配置脚本的日志中,我没有发现任何与 python 相关的不良内容。但无论如何,编译后的 gdb 一直说

$ ./gdb -q
/home/constantine/.gdbinit:7: Error in sourced command file:
ind_string_in_backtrace (gdb.Function)::1: Error in sourced command file:
Undefined command: "class".  Try "help".
(gdb) py print("hello")
Python scripting is not supported in this copy of GDB.
Run Code Online (Sandbox Code Playgroud)

我输入 gdb 后看到的错误也与 Python (自动启动时加载的脚本)有关。我确实尝试过make clean,但没有帮助。我希望有人知道解决方案,我真的需要一个脚本,因此需要 python。

dbr*_*nk0 2

您的构建机器上可能缺少 python 开发库(Ubuntu 上的 python-dev 包或变体,CentOS 上的 python-devel)。

配置 gdb 时,gdb 的顶级配置日志中没有提及 python。

尝试像这样构建:

make 1> out.log 2> err.log
然后在out.log中搜索python。您应该看到类似这样的内容,以开始工作 python 脚本。

检查是否使用 python...auto
检查 python.../usr/bin/python
检查 python2.7...是的
检查 python 代码的编译器标志... -fno-strict-aliasing -DNDEBUG -fwrapv
检查python是否支持线程...是的