首页 > 解决方案 > 调试 gdb tui 定义新布局

问题描述

我正在尝试为 gdb tui 模式定义自己的新布局(根据https://sourceware.org/gdb/current/onlinedocs/gdb/TUI-Commands.html#TUI-Commands,但每次我输入示例( tui new-layout example src 1 regs 1 status 0 cmd 1) 我得到这个错误:Undefined tui command: "new-layout example src 1 regs 1 status 0 cmd 1". Try "help tui".

有什么建议,可能有什么问题(输入命令时我已经处于 TUI 模式(tui enable))?

标签: debugginggdb

解决方案


我和你有同样的问题。即使文档显示了该功能,9.1 似乎也没有该功能。

我尝试构建 GDB 快照版本 10.0.50.20200305-git,它具有 tui new-layout 功能。

您可以在此处找到快照版本:ftp: //sourceware.org/pub/gdb/snapshots/current/

这是我所做的:

cd ~/src
tar xf gdb-10.0.50.20200306.tar.xz
mkdir gdb
cd gdb
~/src/gdb-10.5.50.20200306/configure --enable-tui
make
 ~/src/gdb/gdb/gdb  --version
GNU gdb (GDB) 10.0.50.20200306-git

然后我只是在一个可执行文件上从 ~/src/gdb 运行 gdb。然后我可以做

tui new-layout example regs 19 src 21 cmd 20

但是,重新启动 gdb 后它并没有持续存在。但如果我不退出,我可以切换到它。

layout asm
layout regs
layout example

不确定布局在退出和启动后是否应该持续存在?


推荐阅读