You copied the Doc URL to your clipboard.

ARM C and C++ library directory structure

The libraries are installed in two subdirectories within install_directory\lib:


Contains the variants of the ARM C library, the floating-point arithmetic library (fplib), and the math library (mathlib).


Contains the variants of the Rogue Wave C++ library (cpp_*) and supporting ARM C++ functions (cpprt_*), referred to collectively as the ARM C++ Libraries.

The accompanying header files for these libraries are installed in:


The environment variable ARMCCnLIB must be set to point to the lib directory, or if this variable is not set, ARMLIB. Alternatively, use the --libpath argument to the linker to identify the directory holding the library subdirectories. You must not identify the armlib and cpplib directories separately because this directory structure might change in future releases. The linker finds them from the location of lib.


  • The ARM C libraries are supplied in binary form only.

  • The ARM libraries must not be modified. If you want to create a new implementation of a library function, place the new function in an object file, or your own library, and include it when you link the application. Your version of the function is used instead of the standard library version.

  • Normally, only a few functions in the ISO C library require re-implementation to create a target-dependent application.

  • The source for the Rogue Wave Standard C++ Library is not freely distributable. It can be obtained from Rogue Wave Software Inc., or through ARM, for an additional license fee.

See also


Introducing the ARM Compiler toolchain: