The developer Keith Packard has announced in his blog the first stable version of Picolibc. This is a new implementation of the standard library for language C, which is specifically designed for use on embedded devices. In the library various code components of other projects and new code from Packard were merged.
Packard itself has been involved in the development of Unix-like systems for several decades, most notably the X11 windowing system, and has a long experience in using language C. Since mid-July, Packard has been working for the RISC V Specialists Sifive on improving the development tools for embedded systems with the free CPU architecture. The new project clearly aims to be used on small microcontrollers and not for use with more powerful CPUs and a complete Linux system.
For the now available Picolibc Packard has taken the code of Newlib as the starting point of his work. In it, the developer has replaced the IO components with those from the AVR Libc and further optimized the new code in other respects. For example, RISC-V generates faster and smaller code through specific changes. The use of the build system Meson should also accelerate building the library.
As part of Picolibc, Packard has also created a picocrt, which is responsible for initializing memory and invoking various constructors before calling its own C program the main function. The code of Picolibc can be found on Github. The code consists exclusively of components under BSD license or similarly revealing licenses.
Via | Keith Blog