Remote GDB

Till Straumann strauman at slac.stanford.edu
Thu Jun 14 15:08:23 UTC 2012


On 06/14/2012 09:46 AM, Pierre Ficheux wrote:
> Le 14/06/2012 13:43, Sebastian Huber a écrit :
>> On 06/14/2012 01:21 PM, Pierre Ficheux wrote:
>>> 2- When I add "rtems_gdb_start (0, "/dev/ttyS0");" to a simple "Hello
>>> World"
>>> program I receive the error:
>>>
>>> "Creating Task 'GDBd' (status: too many)"
>> You likely have not enough resources registered (tasks, file
>> descriptors, semaphores, etc.). Can you also post your configuration?
>>
> Looks like RTEMS_gdb_stub_1_5 is obsolete (?).
> Using
> c/src/lib/libbsp/i386/shared/comm/GDB.HOWTO is much better.
That depends. The 'rtems-gdb-stub' serves a different purpose.
It is a gdb server which allows you to attach / debug select threads
only.

The stub described in GDB.HOWTO works at the lowest possible
level. This means that you can debug kernel internals etc.
However, it also means that while gdb is attached your entire
target system is essentially 'stopped'.
In some cases this is not permissible, i.e., you want to debug
select threads only but leave everything else running while
you are debugging. 'rtems-gdb-stub' allows you to do exactly
that.

HTH
- Till
>   It works
> fine with QEMU and pseudo-UART with "-serial pty" + gdb 4.7.
>
> Following config is fine after adding GDB glue (gdb_glue.c).
>
> /* configuration information */
>
> #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
> #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
>
> #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
>
> #define CONFIGURE_MAXIMUM_TASKS 10
>
> #define CONFIGURE_INIT
> #include<rtems/confdefs.h>
> /* end of file */
>
>
>
> Thx
>




More information about the users mailing list