| uClibc | |
|---|---|
| Developer | Erik Andersen |
| Initial release | February 13, 2000; 26 years ago (2000-02-13) |
| Final release | 0.9.33.2 (May 15, 2012; 13 years ago (2012-05-15)) [±][1] |
| Written in | C |
| Operating system | Linux |
| Platform | Embedded Linux |
| Type | |
| License | LGPLv2.1[2] |
| Website | www |
| Repository | git |
| uClibc-ng | |
|---|---|
| Stable release | 1.0.52 / April 6, 2025; 10 months ago (2025-04-06) |
| Website | www |
| Repository | cgit |
Incomputing,uClibc (sometimes written μClibc) is a smallC standard library intended forLinux kernel-based operating systems forembedded systems andmobile devices. uClibc was written to supportμClinux, a version of Linux not requiring amemory management unit and thus suited formicrocontrollers (uCs; the "u" is aLatin script typographicalapproximation - not a properromanization, which would be letter "m" - ofμ for "micro").[3]
Development on uClibc started around 1999.[4] uClibc was mostly written from scratch,[5] but has incorporated code from glibc and other projects.[6] The project lead is Erik Andersen, and the other main contributor is Manuel Novoa III. Licensed under theGNU Lesser General Public License, uClibc isfree and open-source software.

uClibc is much smaller than theglibc, the C library normally used with Linux distributions. While glibc is intended to fully support all relevant C standards across a wide range of hardware and kernel platforms, uClibc is specifically focused on embedded Linux systems. Features can be enabled or disabled according to space requirements.
uClibc runs on standard andMMU-less Linux systems. It supportsi386,x86-64,ARM (big/little endian),Atmel AVR32,Analog Devices Blackfin,Renesas/Hitachi H8 (h8300),Motorola m68k,MIPS (big/little endian),IBM PowerPC,SuperH (big/little endian),Sun SPARC, andRenesas/NEC v850 processors.
uClibc-ng[7] is afork of uClibc announced on theOpenWRT mailing list in July 2014 after more than two years had passed without a uClibc release, citing a lack of any communication from the maintainer.[8][9][10] At present, the original project's author no longer publishes updates, but refers to the still actively developed fork uClibc-ng for current releases.[11]
pthreads support (derived from glibc 2.1.3's linuxthreads library) [...] Merged in the random number support (rand, srand, etc) from glibc.