您的位置:首页 > 其它

Remote 'g' packet reply is too long 解决方法

2017-04-23 21:43 766 查看

Remote ‘g’ packet reply is too long 解决方法

解决方法

修改gdb/remote.c文件中的static void

process_g_packet (struct regcache *regcache)函数:

由:

if (buf_len > 2 * rsa->sizeof_g_packet)
error (_("Remote 'g' packet reply is too long: %s"), rs->buf);


改为:

if (buf_len > 2 * rsa->sizeof_g_packet) {
rsa->sizeof_g_packet = buf_len;
for (i = 0; i < gdbarch_num_regs (gdbarch); i++)
{
if (rsa->regs[i].pnum == -1)
continue;
if (rsa->regs[i].offset >= rsa->sizeof_g_packet)
rsa->regs[i].in_g_packet = 0;
else
rsa->regs[i].in_g_packet = 1;
}
}


重新编译,安装即可: 1、sudo ./configure 2、sudo make 3、sudo make install

补充说明:

通过sudo apt-get source gdb获得当前gdb的源码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  gdb-error
相关文章推荐