问题标签 [gdb-python]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 使用 gdb python api,如何在调试会话期间获取 ac 变量的值
我是 gdb python api 的新手。但我不确定如何在调试会话期间获取特定变量的值
python - 如何使用 JDebug 为 bt 堆栈跟踪选项调用“bt”命令
我正在使用 python 使用 Jdebug 系统调用并尝试自动化“bt”命令的过程,如下所示。
它由两个步骤组成。
收到的回复:
如上所示(gdb)提示出现,现在我需要传递“bt”命令并从 gdb 提示中读回响应。
不知道如何通过 python 或 shell 脚本发送“bt”命令并读回响应。
我希望自动化这两个步骤:
[在 gdb 提示符下调用 'bt' 并读回响应行,即 stack_trace 信息] 通过 pyton 或通过 os.system 调用。
gdb - 如何让 GDB + GEF 在上下文中打印局部变量列表?
我来自使用 调试 python3 pudb3
,这是一种乐趣。现在我正在尝试在 gdb 中调试 C 代码,并且我正在尝试获得类似的体验。
为了到达那里,今天我安装了 gef。看起来不错,但是在文档中搜索后,我找不到在“上下文”视图中维护包含所有局部变量的列表的方法。我知道它info locals
可以打印我需要的东西,但我想在 gef 的上下文视图中始终拥有它(我正在重定向到另一个终端)。
有什么办法可以做到这一点?是否有另一种解决方案可以在调试 C 代码时获得类似 pudb3 的体验?
非常感激。
python - 如何在 Cygwin for Windows 10 (x64) 中使用 GDB 调试 python 源代码
我通常用 python 编码,我需要一个调试器。我选择了 GDB,因为它还有助于调试我的 c++ 应用程序。我已经阅读了有关 GDB 调试器的 python 文档,但我仍然不清楚。我安装了 cygwin,并在 Windows 10 (x64) 上安装了 GDB。我还需要安装更多东西吗?在安装它之后,我接下来的步骤应该是运行带有断点和所有其他常规功能的调试器(不创建额外的文件,正如我在一些答案中读到的那样)
linux - 使用自定义 python 从源代码构建 gdb 10.1
我正在尝试从源代码构建最新的 gdb 10.1。
[我想要这样做的原因是我正在尝试调试一个链接到 Python 2.7.18 的自定义构建的程序,并且我的系统 gdb 链接到我的 /lib64 目录中的 Python 2.7.5 的构建,并且不适用于较新版本]。
阅读完 README 文件后,我使用以下方式进行了配置:
...然后运行
make all install
...按照说明。但是,每次构建尝试都会以以下形式的大量错误消息失败:
在检查配置步骤的输出和 Makefile 本身时,我根本找不到对我在配置时指定的 Python 安装的任何引用(并且我还把它放在我的 LD_LIBRARY_PATH 的头部以确保编译器并且链接器可以在构建时找到它)。
我在这里想念什么?
gdb - 我可以定义一个适用于指针或对象的 gdb 命令吗?
假设我创建了一个 gdb 用户定义命令,如下所示:
wherefoo_printer
接受一个指针参数。然后,如果我有一个指针变量pf
,我可以这样做:
但是如果我有一个非指针变量f
,我需要记住提供&
:
有没有办法定义命令以使用指针或非指针参数?即,所以这两个都可以工作:
debugging - GDB共享选项卡下嵌入代码的目的是什么
在 GDB 在线调试器中,当我单击“共享”选项卡时,第一个选项是:可共享链接 第二个选项是嵌入代码 嵌入代码的目的是什么?
python - 如何在 Python 中调试卡住的异步协程?
我的生产代码中有很多协程,在处理请求时卡在未知位置。我将带有Python 支持扩展的 gdb 附加到进程,但它没有显示协程中进程卡住的确切行,只显示主堆栈跟踪。这是一个最小的例子:
GDB 显示了一个在第 7 行结束的跟踪,但代码显然卡在第 4 行。如何使用嵌套协程使其显示更完整的跟踪?
gdb - 使用带有别名的 gdb 运行 python 脚本
当我想将 python 运行到 gdb 中时,我使用
source /tmp/gdb/tmp/parser.py
- 我可以设置一个别名,以便在下次我想调用这个脚本时我只使用
parser.py
或parser
(不将脚本设置到工作目录 - 如何将 args 传递给脚本?
source /tmp/gdb/tmp/parser.py <args1>
不工作
gdb - 使用 GDB 卸载源文件
(gdb) source script.py
将脚本文件加载到 GDB
如何卸载该脚本?如何卸载所有加载的脚本或查看所有加载的脚本?