5.4.2.1 Standard Libraries

The Microchip Unified Standard C Library (MUSL) contains a standardized collection of functions, such as string, math and input/output routines. The MUSL archive libc-musl.a will be linked with your project when it contains C-only source and is built with the xc32-gcc driver. When you build a project that contains C++ code with the xc32-g++ driver, MUSL and libstdc++.a libraries will be linked.

MPLAB XC32 also provides a picolibc library as an alternative small-footprint standard library that supports thread-local storage. This library (libc-pico.a) is requested using the -mchp-stdlibc option. The math version of this library is called libm-pico.a. See Mchp-stdlibc Option for more information on this option and Thread-local Storage for information on how thread-safe objects are supported by this compiler.