[hellogcc] Re: Why GDB fails to connect on first attempt and always succeed on second

  • From: Li Bingqiu <lbingqiu@xxxxxxxxx>
  • To: hellogcc@xxxxxxxxxxxxx
  • Date: Wed, 12 Dec 2012 11:02:50 +0800

谢谢你的建议,暂时还不能更换,更高的版本需要porting。我自己去看下代码,如果解决了,我会把解决办法发出来

On Wed, Dec 12, 2012 at 10:26 AM, Yao Qi <qiyaoltc@xxxxxxxxx> wrote:

> 第一次失败的:
>
>
> On 12/12/2012 09:47 AM, Li Bingqiu wrote:
>
>> (gdb) target remote :1234
>> Remote debugging using :1234
>> Sending packet: $qSupported#37...Sending packet:
>> $qSupported#37...Sending packet: $qSupported#37...Ack
>>
>
> 这里不对。 gdb 莫名其妙的连续发出了三个qSupported packet,一般情况 下,GDB在target remote
> 的时候,只用发出一个qSupported packet,参见你第二 次成功的output。
>
>
>  Packet received:
>> PacketSize=7cf;QPassSignals+;**qXfer:libraries:read+;qXfer:**
>> auxv:read+;qXfer:features:**read+
>> Packet qSupported (supported-packets) is supported
>> Sending packet: $qXfer:features:read:target.**xml:0,7ca#46...Ack
>> Packet received:
>> PacketSize=7cf;QPassSignals+;**qXfer:libraries:read+;qXfer:**
>> auxv:read+;qXfer:features:**read+
>> Unknown remote qXfer reply:
>> PacketSize=7cf;QPassSignals+;**qXfer:libraries:read+;qXfer:**
>> auxv:read+;qXfer:features:**read+
>>
>
> 前边的三个qSupported packet,导致后边的packet都乱了,所以这里报错了。
>
> 如果你们可以更换gdb,那就更新到最新的gdb (6.8有点太旧了),如果还有问 题,去sourcware bugzilla
> 开bug,到时候会有人去fix。 不过你们不能更换 gdb,那就自己fix吧。看看 remote.c:remote_query_**supported
> 的代码。  Good luck!
>
>

Other related posts: