4.1. About the runtime libraries

The following runtime libraries are provided to support compiled C and C++:

ANSI C

The C libraries consist of:

  • The functions defined by the ISO C library standard.

  • Target-dependent functions used to implement the C library functions in the semihosted execution environment. You can redefine these functions in your own application.

  • Helper functions used by the C and C++ compilers.

C++

The C++ libraries contain the functions defined by the ISO C++ library standard. The C++ library depends on the C library for target-specific support and there are no target dependencies in the C++ library. This library consists of:

  • the Rogue Wave Standard C++ Library version 2.01.01

  • helper functions for the C++ compiler

  • additional C++ functions not supported by the Rogue Wave library.

For a detailed description of how the libraries comply with the ISO standard, see ISO implementation definition.

As supplied, the ANSI C libraries use the standard ARM semihosted environment to provide facilities such as file input/output. This environment is supported by the ARMulator®, Angel™, and Multi-ICE. You can use the ARM development tools in ADS to develop applications, and then immediately run and debug the applications under the ARMulator or on a development board. See the description of semihosting in the ADS Debug Target Guide for more information on the debug environment.

You can re-implement any of the target-dependent functions of the C library as part of your application. This enables you to tailor the C library, and therefore the C++ library, to your own execution environment.

You can also tailor many of the target-independent functions to your own application-specific requirements, for example:

Many of the C library functions are independent of any other function and contain no target dependencies. You can easily exploit these functions from assembly language.

Copyright © 1999-2001 ARM Limited. All rights reserved.ARM DUI 0067D
Non-Confidential