gdbserverは,non-stop modeをサポートしない.

GNU gdb (GDB) 6.8.50.20090203-cvs
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
(gdb) set target-async 1
(gdb) set non-stop 1
(gdb) set debug remote
Argument required (integer to set it to.).
(gdb) set debug remote 1
(gdb) target remote localhost:12345
Remote debugging using localhost:12345
Sending packet: $qSupported#37...Ack
Packet received: PacketSize=3fff;QPassSignals+;qXfer:libraries:read+;qXfer:auxv:read+;qXfer:features:read+;QStartNoAckMode+;qXfer:osdata:read+
Packet qSupported (supported-packets) is supported
Sending packet: $QStartNoAckMode#b0...Ack
Packet received: OK
Sending packet: $Hg0#df...Packet received: OK
Sending packet: $qXfer:features:read:target.xml:0,fff#7d...Packet received: l<target><architecture>i386</architecture></target>
Non-stop mode requested, but remote does not support non-stop
(gdb) 

ぷぎゃ.


x86Linuxだからかなー,組込みでもホスト環境でこなしちゃうだろうからなー.

と思って,src/gdb/gdbserver/ を探ってみたけれど,どこにも QNonStopの文字列が無い.


まじですか? 組込みLinuxの人たちは,どうやってマルチスレッドアプリのデバッグをしているのですか? まさか,printfですか? きょうびITRON屋でもprintfデバッグはしませんぜ.
ITRONよりも開発環境が整っているというのは,組込みLinuxベンダの常套句だと思うのですけれどね.現実は,こんなものですか.

まあ,今回の調査の目的は,GDBの挙動をみること.組込みLinuxのアプリ屋さんたちが,どんなに劣悪な環境下で開発していようが知ったことではないのですけれども.