From Wikipedia, the free encyclopedia
Jump to: navigation, search
Musl libc.png
Developer(s) Rich Felker (dalias) and others
Initial release February 11, 2011; 6 years ago (2011-02-11)[1]
Stable release
1.1.16[2] / December 31, 2016; 5 months ago (2016-12-31)
Operating system Linux 2.6 or later
Platform x86, x86 64, ARM, MIPS, Microblaze, PowerPC, SuperH
License MIT License

musl is a C standard library intended for operating systems based on the Linux kernel, released under the MIT License.[3] It was developed by Rich Felker with the goal to write a clean, efficient and standards-conformant libc implementation.[4]


Musl was designed from scratch to allow efficient static linking and to have realtime-quality robustness by avoiding races, internal failures on resource exhaustion and various other bad worst-case behaviors present in existing implementations.[4] The dynamic runtime is a single file with stable ABI allowing race-free updates and the static linking support allows an application to be deployed as a single portable binary without significant size overhead.

It claims compatibility with the POSIX 2008 specification and the C11 standard.[5] It also implements most of the widely used non-standard Linux, BSD, and glibc functions.[citation needed]


As of 2015, Linux distributions that use musl as the standard C library include Alpine Linux, Dragora 3, OpenWRT,[6] Sabotage,[7] Morpheus Linux[8] and optionally prebuilt for Void Linux.

See also[edit]


  1. ^ "musl - obsolete versions". 2016-07-05. Retrieved 2016-09-26. >
  2. ^ "Download musl". 2016-12-31. Retrieved 2017-03-24. 
  3. ^ Rich Felker et al. (2016-04-29). "COPYRIGHT". Retrieved 2016-09-26. 
  4. ^ a b "Introduction to musl". 2016-04-21. Retrieved 2016-09-26. 
  5. ^ "Compatibility". 2014-05-27. Retrieved 2016-09-26. 
  6. ^ Fietkau, Felix (2015-06-15). "OpenWrt switches to musl by default". openwrt-devel. Retrieved 2016-09-26. 
  7. ^ on GitHub
  8. ^ "morpheus-base: README". Retrieved 2016-09-26. 

External links[edit]