$linuxjunkies
>

musl

also: musl libc

musl is a lightweight, standards-compliant C standard library alternative to glibc, designed for simplicity, correctness, and embedded/embedded Linux systems.

musl (pronounced "muscle") is a C standard library implementation that provides core functions required by C programs, similar to glibc but with a focus on small size, security, and POSIX compliance. Unlike glibc, musl avoids GNU extensions and prioritizes portability and predictability.

musl is commonly used in lightweight Linux distributions like Alpine Linux, where minimal overhead is critical. Programs compiled against musl produce smaller binaries and have fewer runtime dependencies, making them ideal for containers and embedded systems.

Example: Alpine Linux uses musl instead of glibc, which is why Alpine container images are typically 5–10 MB rather than 100+ MB with a glibc-based distribution like Ubuntu. A simple application compiled for musl might be 2–3 MB, while the same app compiled for glibc could be 10+ MB.

Related terms