今天在使用gdb调试C程序时出现了:
Could not insert hardware watchpoint 3.
Could not insert hardware watchpoint 4.
Could not insert hardware breakpoints:
You may have requested too many hardware breakpoints/watchpoints.
对这种情况,参考了博客园的一篇文章,内容如下:
活动的 (可用的) 硬件观察点的个数是有限的。如果你设置了过多的硬件观察点,当程序从中断的状态变为执行的状态时,GDB
可能无法把它们全部插入。另外,活动的硬件观察点的数量只有在试图继续执行程序时才能知道,所以,直到这种尝试发生之前 GDB 无法警告你这一点。如果这种情况真的发生了,你可以用 disable 命令将多余的硬件观察点禁用。
之后使用disable命令成功解除:
(gdb) disable 3
(gdb) disable 4
(gdb) n
10 printf("%c\n",*tresh);
参考文献:
https://www.cnblogs.com/friedCoder/articles/12359900.html