<p>Everest supports 2 different C libraries, musl and glibc. This guide should help you decide which to choose.</p>
<h2>1 - musl</h2>
<p><strong>1.1 </strong>Pros</p>
<p>Musl is extremely lightweight and easy to build, compared to Glibc.</p>
<p>As an added bonus, musl is also more secure than Glibc.</p>
<p>Musl recieves the most support from the Everest development team.</p>
<p><strong>1.2 </strong>Cons</p>
<p>Musl may not support all programs, especially proprietary programs, or programs using Glibc-specific APIs.</p>
<p><strong>1.3 </strong>Who should use musl</p>
<p>Users running a server, doing simple web browsing, or using programs which do not depend on Glibc should use musl.</p>
<p><strong>1.4 </strong>Who shouldn't use musl</p>
<p>Users requiring proprietary software that cannot be patched and recompiled against musl, users who require nvidia graphics drivers, or those who use Steam.</p>
<p>While compatibility layers, such as gcompat, can remedy these issues, there is no 100% perfect solution.</p>
<p><strong>1.5 </strong>Solutions</p>
<p>Those wishing to run musl, even with incompatible software and hardware, have a couple of solutions:</p>
<p><i>1.5.1 </i>gcompat</p>
<p>Gcompat is a shared object file that provides programs with Glibc APIs on a musl system. This can be used for running Glibc programs, but CANNOT be used for compiling them.</p>
<p>Install gcompat by running the following:</p>
<code>(root)# gpkg -f gcompat</code>
<p><i>1.5.2 </i>Glibc chroot</p>
<p>A minimal chroot containing Glibc can be set up very quickly.</p>
<p>First, ensure you have the everest-devtools and everest-buildtools packages installed:</p>