1.6.8 C library API definitions for targeting a different environment

In addition to the direct and indirect semihosting dependent functions, there are a number of functions and files that might be useful when building for a different environment.

The following table shows these functions and files.

Table 1-4 Published API definitions

File or function Description
__main(), __rt_entry() Initializes the runtime environment and executes the user application
__rt_lib_init(), __rt_exit(), __rt_lib_shutdown() Initializes or finalizes the runtime library
LC_CTYPE locale Defines the character properties for the local alphabet
rt_sys.h A C header file describing all the functions whose default (semihosted) implementations use semihosting calls
rt_heap.h A C header file describing the storage management abstract data type
rt_locale.h A C header file describing the five locale category filing systems, and defining some macros that are useful for describing the contents of locale categories
rt_misc.h A C header file describing miscellaneous unrelated public interfaces to the C library
rt_memory.s An empty, but commented, prototype implementation of the memory model

If you are re-implementing a function that exists in the standard ARM® library, the linker uses an object or library from your project rather than the standard ARM library.


Do not replace or delete libraries supplied by ARM. You must not overwrite the supplied library files. Place your re-implemented functions in separate object files or libraries instead.
Non-ConfidentialPDF file icon PDF versionARM DUI0475M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.