![]() | 1 | initial version |
In Unix and Unix like Operating Systems the standard c library is considered part of the operating system itself, in fact it's mostly a wrapper around the kernel system calls. That means almost every program is linked against the c library and that a different implementation targeting a different kernel won't work.
The standard implementation adopted by many Linux distribution is GNU libc (glibc
) which is considered slow and bloated by many. There are other implementations targeting the Linux Kernel such as dietlibc
, uClibc
, musl
mainly used in embedded systems.
The bottom line is that you can't replace the standard C library just replacing the existing implementation using the package manager or compiling a new one from the source code, you MUST compile every program with it.
Anyway there are general purpose distributions (Void Linux is one of them) which offer a different libc implementation (musl
in this case) as an alternative to glibc
.