-
-Finally, it's worth noting that musl's include and lib directories in
-the build tree are setup to be usable without installation, if
-necessary. Just modify the the paths in the spec file used by musl-gcc
-(it's located at $prefix/lib/musl-gcc.specs) to point to the
-source/build tree.
-
-
-
-==== Option 2: Installing musl as the primary C library ====
-
-In this setup, you will need an existing compiler/toolchain. It
-shouldnt matter whether it was configured for glibc, uClibc, musl, or
-something else entirely, but sometimes gcc can be uncooperative,
-especially if the system distributor has built gcc with strange
-options. It probably makes the most sense to perform the following
-steps inside a chroot setup or on a virtualized machine with the
-filesystem containing just a minimal toolchain.
-
-WARNING: DO NOT DO THIS ON AN EXISTING SYSTEM UNLESS YOU REALLY WANT
-TO CONVERT IT TO BE A MUSL-BASED SYSTEM!!
-
-1. If you are just upgrading an existing version of musl, you can skip
- step 1 entirely. Otherwise, move the existing include and lib
- directories on your system out of the way. Unless all the binaries
- you will need are static-linked, you should edit /etc/ld.so.conf
- (or equivalent) and put the new locations of your old libraries in
- the search path before you move them, or your system will break
- badly and you will not be able to continue.
-
-2. Configure musl's build with a command similar to:
- ./configure --prefix=/usr --disable-gcc-wrapper
- Refer to ./configure --help for details on other options.
-
-3. Run "make" to compile musl.
-
-4. Run "make install" with appropriate privileges.
-
-5. If you are using gcc and wish to use dynamic linking, find the gcc
- directory containing libgcc.a (it should be something like
- /usr/lib/gcc/i486-linux-gnu/4.3.5, with the arch and version
- possibly different) and look for a specs file there. If none
- exists, use "gcc -dumpspecs > specs" to generate a specs file. Find
- the dynamic linker (/lib/ld-linux.so.2 or similar) and change it to
- "/lib/ld-musl-$ARCH.so.1" (with $ARCH replaced by your CPU arch).
-
-At this point, musl should be the default libc. Compile a small test
-program with gcc and verify (using readelf -a or objdump -x) that the
-dynamic linker (program interpreter) is /lib/ld-musl-$ARCH.so.1. If
-you're using static linking only, you might instead check the symbols
-and look for anything suspicious that would indicate your old glibc or
-uClibc was used.