Using Picolibc in Embedded Systems
summary
Picolibc implements C17 plus many POSIX 2008 APIs for 16–64 bit embedded targets, ships as v1.8.6, and runs its test suite under emulation across 68k and SuperH and other odd architectures. It trims footprints (removes a 384-byte ctype table), adds multiply-accumulate emulation that rounds correctly without hardware, and uses symbol aliasing to map float/long double variants. Integration options include Cross-Tool-NG, Zephyr SDK (default libc), and per-app printf/ctype linker/config choices; avoid on 8-bit AVR if size is critical.
AI-written summary · about
chapters (13)
- 0:00Introduction to picolibc
- 1:13Design goals and testing
- 3:55Recent features and updates
- 7:18Architecture support
- 8:58Toolchain integration
- 11:45Build-time configuration
- 14:29Standard IO and ctype
- 19:17Math library specifics
- 22:31Optimizing ctype implementation
- 27:30Floating point data types
- 33:22Standard IO implementation
- 37:40Using picolibc in Zephyr
- 40:31Q&A and future plans
related talks
47mUsing Picolibc in Embedded Systems
42mpicolibc: a C library for small 32-bit systems
40mPicolibc: A C Library for Smaller Systems
32mOpen Source C/C++ Embedded Toolchains Using LLVM
46molibc: Another C Runtime Library
36muClibc Today: Still Makes Sense
45mFil-C: memory safety with fanatical C/C++ compatibility
01h 00mDealing with Embedded Limitations
