Debugging 调试gdb tui定义新布局

Debugging 调试gdb tui定义新布局,debugging,gdb,Debugging,Gdb,我正试图为gdb tui模式定义自己的新布局(根据,但每次我输入示例(tui新布局示例src 1 regs 1状态0 cmd 1),我都会收到以下错误:Undefined tui命令:“新布局示例src 1 regs 1状态0 cmd 1”。请尝试“help tui”。 有什么建议吗,可能有什么问题吗(我在输入命令时已经处于TUI模式(TUI enable))我遇到了与您相同的问题。尽管文档中显示了该功能,但它似乎不在9.1中 我尝试构建GDB快照版本10.0.50.20200305-git,它

我正试图为gdb tui模式定义自己的新布局(根据,但每次我输入示例(
tui新布局示例src 1 regs 1状态0 cmd 1
),我都会收到以下错误:
Undefined tui命令:“新布局示例src 1 regs 1状态0 cmd 1”。请尝试“help tui”。


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

我遇到了与您相同的问题。尽管文档中显示了该功能,但它似乎不在9.1中

我尝试构建GDB快照版本10.0.50.20200305-git,它具有tui新的布局特性

您可以在此处找到快照版本:

以下是我所做的:

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

不确定该布局在退出并启动后是否应该保持不变?

据我所知,该布局不会保持不变,但您可以将这些命令放入您的
~/.gdbinit
;)中。我对该快照有一个小问题,我收到这个错误消息:
elf.c:740:35:错误:从“unsigned int”到“int”的转换中溢出将值从“num_group=4294967295”更改为“-1”[-Werror=overflow]740 | elf_tdata(abfd)->num_group=num_group=-1
但这只是一个快照,所以我只是想知道这也需要多长时间才能成为正式版本。而且,我刚刚检查了我的本地gdb文档(
info gdb
),那里没有创建自己布局的段落,所以我想我只是需要等待或者等一下,让一个新的快照工作。新版本发布可能只是时间问题。不确定你会遇到什么错误。我必须安装一些依赖项才能使构建正常工作(libncurses dev libncursesw5 dev和libconfig dev)。嗯,也许我会再试一次,提前检查依赖项,但由于我使用的是Arch Linux,所以我有了新的软件包,所以在获得更新版本之前应该不会太久(取决于gdb开发团队发布它所需的时间)