【问题标题】:gdb: Undefined output format "z"gdb:未定义的输出格式“z”
【发布时间】:2015-12-13 18:40:24
【问题描述】:

我想在 BeagleBone Black Board 上使用 gdb 调试我的代码。我想在 gdb 中将我的变量打印为十六进制,为了做到这一点,我一直使用 p/z 作为 gdb 命令。但是当我在 BeagleBlack 的 gdb 中使用这个命令时,我得到了:

Undefined output format "z".

有什么方法可以让它工作吗?它与gdb版本有关吗?我的操作系统是 Debian,我的 gdb 版本是:7.4.1-debian,当我尝试安装新软件包时,它说:gdb is already the newest version

【问题讨论】:

    标签: c linux gcc gdb debian


    【解决方案1】:

    打印格式z 是最近才添加的(我认为是7.6 或7.7 - 基于this patch)。由于您使用的是旧版本的 gdb,它无法识别 z 选项。您可以改用p/x

    区别between x and z is the leading zeros

    z 与“x”格式一样,该值被视为整数并打印为十六进制,但打印前导零以填充该值 到整数类型的大小。

    我系统上的 GDB 是 7.9 版,它可以识别p/z。因此,您可以升级 GDB 或使用 p/x

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多