blob: 9df22055c709e2a0b8986c2f984202bff9aa92da [file] [log] [blame]
Rich Felker0b44a032011-02-12 00:22:29 -05001
2musl libc - a new standard library to power a new generation of
3Linux-based devices. musl is lightweight, fast, simple, free, and
4strives to be correct in the sense of standards-conformance and
5safety.
6
7musl is an alternative to glibc, eglibc, uClibc, dietlibc, and klibc.
8For reasons why one might prefer musl, please see the FAQ and libc
9comparison chart on the project website,
10
11 http://www.etalabs.net/musl/
12
13For installation instructions, see the INSTALL file.
14
Rich Felker8a35dee2012-05-05 02:39:51 -040015Please refer to the COPYRIGHT file for details on the copyright and
16license status of code included in musl (standard MIT license).
Rich Felker0b44a032011-02-12 00:22:29 -050017
18
19
Rich Felker801b3112011-09-13 13:41:40 -040020Greetings!
Rich Felker0b44a032011-02-12 00:22:29 -050021
Rich Felker8a35dee2012-05-05 02:39:51 -040022With the 0.9.0 release, musl has reached a milestone in completeness
23and compatibility. All interfaces in ISO C99 and POSIX 2008 base exist
24in musl, along with a number of non-standardized interfaces based on
25GNU and BSD libraries and syscall interfaces for Linux-kernel-specific
26functions. Some interfaces lack obscure or rarely-used functionality
27needed for strict conformance, but the vast majority of interfaces go
28above and beyond the requirements for conformance, often promising
29success where other implementations can fail under resource exhaustion
30or other corner-case conditions.
31
32At this point, hundreds of packages have been successfully built
Rich Felker2d3e2a72012-05-06 17:19:37 -040033against musl - either out-of-the-box or with minor patches to address
34portability errors - ranging from low-level system utilities and
35network daemons to major gui applications. Testing has been conducted
36using three separate test frameworks and numerous additional
37standalone test cases to verify the correctness of the implementation.
Rich Felker0b44a032011-02-12 00:22:29 -050038
Rich Felker801b3112011-09-13 13:41:40 -040039Included with this package is a gcc wrapper script (musl-gcc) which
Rich Felker8a35dee2012-05-05 02:39:51 -040040allows you to build musl-linked programs using an existing gcc 3.x or
414.x toolchain on the host. There are also now at several mini
Rich Felker801b3112011-09-13 13:41:40 -040042distributions (in the form of build scripts) which provide a
Rich Felker8a35dee2012-05-05 02:39:51 -040043self-hosting musl-based toolchain and system root. These are much
44better options than the wrapper script if you wish to use dynamic
45linking or build packages with many library dependencies. See the musl
46website for details.
Rich Felker801b3112011-09-13 13:41:40 -040047
48The musl project is actively seeking contributors, mostly in the areas
49of porting, testing, and application compatibility improvement. For
50bug reports, support requests, or to get involved in development,
Rich Felker5eaa2212011-04-11 00:10:26 -040051please visit #musl on Freenode IRC or subscribe to the musl mailing
52list by sending a blank email to musl-subscribe AT lists DOT openwall
53DOT com.
Rich Felker0b44a032011-02-12 00:22:29 -050054
Rich Felker801b3112011-09-13 13:41:40 -040055Thank you for using musl.
Rich Felker0b44a032011-02-12 00:22:29 -050056
57Cheers,
58
59Rich Felker / dalias
60
61