Download musl

Git repository

The latest musl source is always available via the git revision control system. Efforts are made to keep the master branch in a state that not only compiles and works, but that works at least as well or better than the latest release.

The following command can be used to checkout a copy of the musl git repository:

$ git clone git://

Source and revision history are also browsable online via cgit.

Official releases

musl generally follows a time-based release cycle, with versions spaced roughly one to three months apart. Version numbering, however, is based on an evolving roadmap for particular compatibility and feature goals. Releases are timed so as to make fixes for major bugs available in release form as soon as possible while leaving ample time for testing after significant invasive changes.

Beginning with 1.1.7, releases are signed with the project GPG key. Its fingerprint is 8364 8929 0BB6 B70F 99FF DA05 56BC DB59 3020 450F and can be cross-checked against @musllibc on Twitter.

See below for release notes summaries and download links.

Current Versions

Mainline - 1.1.11

This series is actively developed but intended for use in production environments as long as appropriate testing is performed, and should be preferred whenever there is a need for supporting an arbitrary, expanding set of packages or environments.

musl-1.1.11.tar.gz (sig) - Aug 30, 2015

This release introduces a new C locale aligned with future POSIX requirements, allowing it to be used for applying regex and other character-based operations to data which is not necessarily valid UTF-8. The C locale is only used when explicitly requested via environment variables or the application; default behavior is still governed by the C.UTF-8 locale, which operates on whole multibyte characters.

Support for musl's first NOMMU target, SH-2, is also added in this release, along with groundwork for future NOMMU targets. A new musl-clang compiler wrapper is provided to reuse a non-musl-targeted host clang for building programs against musl, as was already possible with gcc. Major performance enhancements have been made to the dynamic linker. On ARM systems that support it, the vdso is now used to accelerate clock_gettime. And debugger backtraces on i386 are improved by a newly-added script to auto-generate call frame information for asm source files.

The uselocale regression that slipped into the 1.1.10 release, as well as many non-critical bugs, have been fixed. Most of these only affected rarely-used interfaces or unusual usage cases. One significant x86[_64] bug that could lead to soft-deadlock in libc-internal locking, and multiple MIPS-, PowerPC-, ARM-, and AArch64-specific bugs, were also fixed.

Stable - 1.0.5

This series does not add new features and avoids changes that might affect building packages against musl or using applications in environments where they are already known to work. It is intended mostly for developers targetting a fixed profile of application software and kernel, such as in embedded development.

musl-1.0.5.tar.gz (sig) - March 30, 2015

This maintenance release brings the 1.0 branch up to date with all important bug fixes that have been applied to mainline as of 1.1.8, including fixes for CVE-2015-1817 and many other bugs, some of which may also impact security. All users of earlier 1.0-series releases should patch or upgrade. This is likely to be the last release in the 1.0 series unless additional high or critical severity security bugs are found before the end of 2015.

Older versions

Earlier versions of musl have been moved to a separate page.