1# CMSIS-Compiler {#mainpage} 2 3**CMSIS-Compiler** provides software components for retargeting I/O operations in standard C run-time libraries. Following interfaces are supported for retargeting: 4 5 - File interface for reading and writing files. 6 - I/O interface for standard I/O stream retargeting (stderr, stdin, stdout). 7 - OS interface for multithread safety using an arbitrary RTOS. 8 9 10 11Standard C library functions are platform independent, but the implementations of the low-level I/O and multithreading support are tailored to the target compiler toolchains. 12 13## Access to CMSIS-Compiler 14 15CMSIS-Compiler is maintained in a GitHub repository and is also released as a standalone package in CMSIS Pack format. 16 17 - [**CMSIS-Compiler GitHub Repo**](https://github.com/Arm-Software/CMSIS-Compiler) provides the full source code of CMSIS-Compiler components. 18 - [**CMSIS-Compiler Documentation**](https://arm-software.github.io/CMSIS-Compiler/latest/) explains how to use the library and describes the implemented functions in details. 19 - [**CMSIS-Compiler Pack**](https://www.keil.arm.com/packs/cmsis-compiler-arm/versions/) delivers CMSIS-Compiler components and examples in [CMSIS-Pack format](https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/index.html). 20 21## Key Features and Benefits 22 23 - CMSIS-Compiler allows individual retargeting configuration for common I/O interfaces: file, stderr, stdin, stdout. 24 - Implements several ready-to-use retarget variants: into File, Breakpoint, Event Recorder, ITM, as well as user-specific variant. 25 - Supports common standard C libraries, such as from Arm Compiler and GCC (Newlib) toolchains. IAR support is planned. 26 - Provides implementation templates and examples to get started. 27