Chapter 6. Sourcery G++ Debug Sprite
Prev |  | Next

## Chapter 6. Sourcery G++ Debug Sprite

This chapter describes the use of the Sourcery G++ Debug Sprite for remote debugging. The Sprite allows you to debug programs running on a bare board without an operating system. This chapter includes information about the debugging devices and boards supported by the Sprite for ARM EABI.

Sourcery G++ Lite contains the Sourcery G++ Debug Sprite for ARM EABI. This Sprite is provided to allow debugging of programs running on a bare board. You can use the Sprite to debug a program when there is no operating system on the board, or for debugging the operating system itself. If the board is running an operating system, and you wish to debug a program running on that OS, you should use the facilities provided by the OS itself (for instance, using `gdbserver`).

The Sprite acts as an interface between GDB and external debug devices and libraries. Refer to Section 6.3, “Invoking Sourcery G++ Debug Sprite” for information about the specific devices supported by this version of Sourcery G++ Lite.

### Important

The Sourcery G++ Debug Sprite is not part of the GNU Debugger and is not free or open-source software. You may use the Sourcery G++ Debug Sprite only with the GNU Debugger. You may not distribute the Sourcery G++ Debug Sprite to any third party.

## 6.1. Probing for Debug Devices

Before running the Sourcery G++ Debug Sprite for the first time, or when attaching new debug devices to your host system, it is helpful to verify that the Sourcery G++ Debug Sprite recognizes your debug hardware. From the command line, invoke the Sprite with the `-i` option:

    > arm-none-eabi-sprite -i

This prints out a list of supported device types. For devices that can be autodetected, it additionally probes for and prints out a list of attached devices. For instance:

    CodeSourcery ARM Debug Sprite
        (Sourcery G++ Lite 2010.09-51)
    armusb: [speed=<n:0-7>] ARMUSB (Stellaris) device
      armusb:///0B01000C - Stellaris Evaluation Board (0B01000C)
    rdi: (rdi-library=<file>&rdi-config=<file>) RDI Device
      rdi:/// - RDI Device

This shows that ARMUSB and RDI devices are supported. The exact set of supported devices depends on your host system and the version of Sourcery G++ you have installed; refer to Section 6.3, “Invoking Sourcery G++ Debug Sprite” for complete information.

Note that it may take several seconds for the Debug Sprite to probe for all types of supported devices.

Prev |  | Next
5.6. Interrupt Vector Tables | Home | 6.2. Debug Sprite Example