Sourcery CodeBench

Embedded C/C++ development tools based on open-source standards

Sourcery CodeBench is a complete development environment for embedded C/C++ development on ARM, Power, Coldfire and other architectures. Install, flash and debug in minutes!

 

Sourcery CodeBench is a complete, full-featured platform for embedded application developers, which comes with all the tools you need to build and debug embedded applications.

  • GNU C & C++ compilers
  • GNU assembler & linker
  • C & C++ runtime libraries
  • Additional C/ C++ runtime libraries
  • CS3 initializationand interrupt handling
  • GNU debugger
  • Debug Sprites
  • Instruction set simulator
  • GNU/Linux application simulator
  • Eclipse IDE
  • GNU/Linux prelinker
  • Library reduction utility
  • Sysroot utilities
  • Access to Sourcery CodeBench updates
  • Access to Sourcery CodeBench knowledgebase
  • Unlimited support

screenshot

Sourcery CodeBench enhances the industry-leading Eclipse IDE with improved support for hardware debugging via JTAG/BDM devices and compete integration with the Sourcery CodeBench environment.

screenshot

A command-line, source-level debugger is also used as a “back end” by the Eclipse IDE.

screenshot

Sourcery CodeBench provides enhanced GDB with support for flash programming and improved hardware breakpoint capabilities.

screenshot

External tools allow you to configure and run programs, batch files, Ant buildfiles, and others using Sourcery CodeBench.

screenshot

Sourcery CodeBench debug sprites provide hardware debugging support using JTAG/BDM devices.

screenshot

The Remote System Explorer (RSE) is a perspective allows users to connect and work with a variety of remote systems.

GNU C & C++ compilers

The de facto standard for GNU/Linux, Sourcery CodeBench enhances these compilers with support for more processors, improved optimization and better reliability. They offer excellent support for programming on embedded systems, including powerful inline assembly support, the ability to place variables and functions into particular sections, and support for interrupt handling.

GNU assembler & linker

Sourcery CodeBench includes modifiable linker scripts for common configurations, giving these powerful programming tools enhanced ability to write low-level driver or startup code and put code and data exactly where you want it to go.

C & C++ runtime libraries

On GNU/Linux systems, Sourcery CodeBench includes the GNU C Library (GLIBC). On uClinux systems, Sourcery CodeBench includes uClibc, a smaller-footprint library that is largely source-compatible with GLIBC. ELF or EABI users receive Sourcery CSLIBC, CodeSourcery's high-performance, small-footprint C library which allows system calls such as read and write to be redirected to your host system.

Sourcery CodeBench Professional and Standard Editions also include additional run-time libraries for particular targets, such as VFP-optimized libraries for enhanced performance on ARM processors with hardware floating-point functionality. These editions also include debuggable versions of the run-time libraries for Linux target systems, letting you step through run-time library code.

CS3 initialization and interrupt handling

CS3 provides a uniform, cross-platform approach to board initialization and interrupt handling on bare metal platforms, including ARM EABI, ColdFire ELF, fido ELF, MIPS ELF, Power EABI, and Stellaris EABI.

GNU debugger

Sourcery CodeBench provides enhanced GDB with support for flash programming and improved hardware breakpoint capabilities. A command-line, source-level debugger that is also used as a “back end” by the Eclipse IDE, it offers a debug sprite for hardware debugging via JTAG/BDM units, and can be used with GDBserver, a GNU/Linux utility that runs on the target system. It supports standard breakpoints and commands for controlling program execution as well as hardware breakpoints, backtraces, and multiple threads.

Debug sprites

Sourcery CodeBench debug sprites provide hardware debugging support using JTAG/BDM devices. On some systems, Sourcery CodeBench debug sprites can automatically program flash memory and display control registers. Sprite’s board initialization can be customized using simple XML-based configuration files, letting programmers insert delays and write to specific memory addresses.

Instruction set simulator

Most “bare board” configurations of Sourcery CodeBench include the QEMU instruction set simulator which can be used to run — and debug — programs even without target hardware. Sourcery CodeBench includes linker scripts targeting the simulator.

GNU/Linux application simulator

Most GNU/Linux configurations of Sourcery CodeBench also include the QEMU simulator for running single-threaded GNU/Linux applications on an x86 GNU/Linux host.

Eclipse IDE

Sourcery CodeBench enhances the industry-leading Eclipse IDE with improved support for hardware debugging via JTAG/BDM devices and compete integration with the Sourcery CodeBench environment. The Eclipse IDE provides a fully visual environment for developing applications, including an automated project builder, and syntax-highlighting editor. Eclipse’s graphical debugging interface is especially useful to embedded systems programmers, giving them the ability to step through code at both the source and assembly level, view registers, and examine stack traces.

GNU/Linux prelinker

For select GNU/Linux target systems, Sourcery CodeBench includes the GNU/Linux prelinker, a postprocessor for GNU/Linux applications which can dramatically reduce application launch time. The Sourcery CodeBench implementation allows the prelinker to operate on non-GNU/Linux host systems, including Microsoft Windows.

Library reduction utility

For GNU/Linux target systems, this utility reduces the footprint of a GNU/Linux system by excluding library functions not used by any program.

Sysroot utilities

The Sourcery CodeBench Sysroot Utilities simplify use of Sourcery CodeBench’s libraries and dynamic linker when running applications on a target system with an existing GNU/Linux installation.

Access to Sourcery CodeBench updates

Sourcery CodeBench Professional, Standard, Personal, and Academic Edition customers automatically receive updates as they become available.

Access to Sourcery CodeBench knowledgebase

The Sourcery CodeBench knowledgebase contains an ever-expanding collection of answers to frequently asked questions about building and debugging applications with Sourcery CodeBench.

Technical support

Sourcery CodeBench Professional and Standard Edition customers under active support receive professional technical support from Mentor Embedded. This support — provided without any per-incident fees — covers much more than just installation and basic usage; it also answers users’ questions about porting programs from other tools, C and C++ programming languages, using inline assembly and other GNU features, and all other topics related to use of Sourcery CodeBench.

Professional Edition customers receive priority responses to support requests. They also receive defect corrections and update releases when needed. Support is provided by the same expert developers who have contributed thousands of changes to the GNU toolchain over CodeSourcery's ten-year history.

Learn more about features included in each Sourcery CodeBench Edition