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://git.musl-libc.org/musl

Source and revision history are also browsable online via cgit.

Releases

musl-0.9.10.tar.gz - April 14, 2013
Further significant compatibility improvements, especially with garbage collectors. UTF-8 decoding performance had greatly increased, and misaligned memory access bugs affecting UTF-8 decoding on some archs have been fixed. Improved handling of caller-provided thread stacks. Many bugs fixed, including potentially dangerous bugs in syslog and in the failure path of pthread_create, and a regression in the ARM crt code that caused shared libraries other than libc.so to crash on loading.
musl-0.9.9.tar.gz - February 1, 2013
Major compatibility improvements, including Linux-specific features, GNU extension functions, grsec kernel quirks compatibility, and workarounds for subtle but dangerous portability errors in some programs. Size, performance, and correctness improvements to the math library. Numerous low-impact bugs fixed.
musl-0.9.8.tar.gz - November 26, 2012
New PowerPC port and major bug fixes and improvements for the MIPS port. Coverage for more optional parts of POSIX including the thread priority scheduling option and stubs for unsupported functionality. Dynamic linker dl_iterate_phdr support. Various minor bugs and strict conformance issues have also been fixed and application compatibility improved.
musl-0.9.7.tar.gz - October 28, 2012
Major new features include support for thread-local storage (__thread/_Thread_local keyword) and a port to Microblaze. Notable quality and conformance improvements have been made in the areas of setting the close-on-exec flag for library-internal file descriptors to avoid fd leaks, using vfork in posix_spawn, system, and popen to make these functions work well even in very large programs, support for recursive calls to dlopen (from constructors), and avoiding executable stacks. Various low-impact bugs have also been fixed.
musl-0.9.6.tar.gz - September 16, 2012
Bugfix release for subtle but serious breakage that crept in to the previous release with the addition of O_SEARCH: the O_ACCMODE mask was incorrectly redefined with one bit missing. Support for md5 crypt hashes and the O_EXEC open mode have also been added.
musl-0.9.5.tar.gz - September 15, 2012
Default-features mode now makes visible POSIX, X/Open, and BSD interfaces when no specific standards-conformance options are requested, making it possible to compile most packages without special CFLAGS. Major header compatibility improvements. Building musl with clang/LLVM is now supported. SHA password hash functions have been added. New dynamic linker features including dladdr and GNU hash support. Various other minor features and bug fixes.
musl-0.9.4.tar.gz - August 18, 2012
Major improvements to MIPS port, including support for dynamic linking. Password hashing (crypt) now supports blowfish hash algorithm. Further application compatibility improvements especially for BSD and SUSv3-targeted software. Performance improvements in printf and memcpy. Various bugfixes: strtod family, wcsstr, err.h functions, and many MIPS-specific bugs.
musl-0.9.3.tar.gz - August 2, 2012
New experimental MIPS port (32-bit, o32 ABI, static-linked-only at this point). Various dynamic linker/loader bugs fixed. Network service name lookup support from /etc/services. Wrappers for more non-POSIX Linux syscalls. Overhauled crypt() with drastic reductions in memory usage and run time. Fixes for several important thread bugs including internal lock corruption, spurious sem_trywait failure, and race conditions on detached-thread exit, as well as various minor bug fixes.
musl-0.9.1.tar.gz - June 3, 2012
Ability to invoke the dynamic linker explicitly to run programs or display the resolution of their dependencies when invoked as ldd. Significant legacy-compat improvements in header files, including _BSD_SOURCE support, and additional interfaces towards basic LSB/glibc-linked binary compatibility. Fixed major POSIX BRE regex parsing bugs that affected building ncurses with a sed using libc regex engine, numerous low-impact bugs, and a few ARM-specific bugs that kept many programs from working at all on ARM.
musl-0.9.0.tar.gz - May 6, 2012
Milestone release covering all interfaces in ISO C99 and POSIX 2008 base. Relicensed under standard MIT license. New configure script for easy build setup. Full stack protector and PIE support on i386 and x86_64 targets. Major floating-point math improvements and fixes, application compatibility improvements (mostly legacy header details), and additional bug fixes in dlerror and several wide character functions.

Older versions

Earlier versions of musl from the alpha and beta series (0.5.0 through 0.8.10) have been moved to a separate page.