我想在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
答案 0 :(得分:0)
最近添加了打印格式z
(我认为,基于this patch,它是7.6或7.7)。由于您使用的是旧版本的gdb,因此它无法识别z
选项。您可以改为使用p/x
。
差异between x
and z
is the leading zeros:
ž 与'x'格式一样,该值被视为一个整数并打印为十六进制,但打印前导零以填充值 到整数类型的大小。
我系统上的GDB是版本7.9,它确实识别p/z
。因此,您可以升级GDB或使用p/x
。