| |||
| Home > The ARM C and C++ libraries > C and C++ library naming conventions | |||
The library filename identifies how the variant was built. The values for the fields of the filename, and the relevant build options are:
*root/prefix_arch[fpu][entrant].endian
rootarmlibAn ARM C library.
cpplibAn ARM C++ library.
prefixcISO C and C++ basic runtime support.
cppRogue Wave C++ library.
cpprtThe ARM C++ runtime libraries.
f--fpmode=ieee_fixed.
IEEE-compliant library with a fixed rounding mode (round to nearest) and no inexact exceptions.
fj--fpmode=ieee_no_fenv.
IEEE-compliant library with a fixed rounding mode (round to nearest) and no exceptions.
fz--fpmode=fast or --fpmode=std.
Behaves like the fj library, but additionally
flushes denormals and infinities to zero.
This library behaves like the ARM VFP in Fast mode. This is the default.
g--fpmode=ieee_full.
IEEE-compliant library with configurable rounding mode and all IEEE exceptions.
hCompiler support (helper) library.
mTranscendental math functions.
mcNon ISO C-compliant ISO C micro-library basic runtime support.
mfNon IEEE 754 floating-point compliant micro-library support.
nCompatible
with the compiler option, --enum_is_int.
uCompatible
with the compiler option, --wchar32.
arch4An ARM only library for use with ARMv4.
tAn ARM/Thumb interworking library for use with ARMv4T.
5An ARM/Thumb interworking library for use with ARMv5T and later.
wA Thumb-2 only library for use with Cortex-M3.
pA Thumb-1 only library for use with Cortex-M1 and Cortex-M0.
2A combined ARM and Thumb-2 library for use with Cortex-R series processor cores.
fpuvUses VFP instruction set.
sSoft VFP.
If neither v nor s is
present in a library name, the library provides no floating-point
support.
entrantePosition-independent access to static data.
fFPIC addressing is enabled.
If neither e nor f is
present in a library name, the library uses position-dependent access
to static data.
endianlLittle-endian.
bBig-endian.
For example:
*armlib/c_4.b *cpplib/cpprt_5f.l
Not all variant/name combinations are valid. See the armlib and cpplib directories
for the libraries that are supplied with the ARM compilation tools.
The linker command-line option --info libraries provides
information on every library that is automatically selected for
the link stage.
Introducing the ARM Compiler toolchain: