QEMU:因 GDBstub 错误而终止
当我尝试从 GDB 连接到 QEmu 时,Qemu 终止并显示日志:“QEMU:通过 GDBstub 终止”。 我在一个终端中使用以下命令启动了 QEMU:
qemu-system-arm -serial telnet:localhost:1235,server,nowait,ipv4 -serial telnet:localhost:1236,server,nowait,ipv4 -serial telnet:localhost:1238 ,server,nowait,ipv4 -gdb tcp:localhost:1234,server,ipv4 -kernel ./build/final.elf -MVersatilepb -ngraphic -m 256 -S
然后在另一个终端中我使用以下命令启动了GDB: arm-none-eabi-gdb --command=~/.gdbinit
并且文件 .gdbinit 包含文本:
设置历史记录保存于 设置登录 目标远程本地主机:1234 加载./build/final.elf 符号 ./build/final.elf b break_virtual
你能让我知道这里出了什么问题吗?
Qemu terminated with the log : "QEMU: Terminated via GDBstub" when I tried to connect to QEmu from GDB .
I started the QEMU with the following command in one terminal :
qemu-system-arm -serial telnet:localhost:1235,server,nowait,ipv4 -serial telnet:localhost:1236,server,nowait,ipv4 -serial telnet:localhost:1238,server,nowait,ipv4 -gdb tcp:localhost:1234,server,ipv4 -kernel ./build/final.elf -M versatilepb -nographic -m 256 -S
And then in another terminal I started GDB with the command :
arm-none-eabi-gdb --command=~/.gdbinit
And the file .gdbinit contains the text:
set history save on
set logging on
target remote localhost:1234
load ./build/final.elf
sym ./build/final.elf
b break_virtual
Can you please let me know whats going wrong here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
GDB 自动加载 ~/.gdbinit
,因此当您通过 --command=~/.gdbinit 加载 .gdbinit 时
,它会运行脚本两次,
当它到达目标远程本地主机的第二次调用时:1234
gdb 挂起其初始连接,qemu 退出,
然后 gdb 无法重新连接到它,因为它不再运行。
删除 --command 选项或重命名文件。
GDB automagically loads ~/.gdbinit
so when you load .gdbinit via --command=~/.gdbinit
it runs the script twice,
when it gets to the 2nd invocation of target remote localhost:1234
gdb hangs up its initial connection, qemu quits,
then gdb fails to reconnect to it because it is no longer running.
Either get rid of the --command option or rename the file.