glibc-inst.xml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <sect2>
  2. <title>Installation of Glibc</title>
  3. <para>Before starting to install glibc, you must cd into the
  4. glibc-&glibc-version; directory and unpack glibc-linuxthreads inside
  5. the glibc-&glibc-version; directory, not in /usr/src as you normally
  6. would do.</para>
  7. <para>This package is known to behave badly when you have changed its default
  8. optimization flags (including the -march and -mcpu options). Glibc is
  9. best left alone, so we recommend you unsetting CFLAGS, CXXFLAGS and other
  10. such variables/settings that would change the default optimization that
  11. it comes with. Also, don't pass the --enable-kernel option to the configure
  12. script. It's known to cause segmentation faults when other packages like
  13. fileutils, make and tar are linked against it.</para>
  14. <para>Basically, compiling Glibc in any way than this book suggests it, is
  15. putting your system at very high risk.</para>
  16. <para>Install Glibc by running the following commands:</para>
  17. <para><screen><userinput>mknod -m 0666 /dev/null c 1 3 &amp;&amp;
  18. touch /etc/ld.so.conf &amp;&amp;
  19. cp malloc/Makefile malloc/Makefile.backup &amp;&amp;
  20. sed 's%\$(PERL)%/usr/bin/perl%' malloc/Makefile.backup &gt; malloc/Makefile &amp;&amp;
  21. cp login/Makefile login/Makefile.backup &amp;&amp;
  22. sed 's/root/0/' login/Makefile.backup &gt; login/Makefile &amp;&amp;
  23. mkdir ../glibc-build &amp;&amp;
  24. cd ../glibc-build &amp;&amp;
  25. ../glibc-&glibc-version;/configure --prefix=/usr \
  26. &nbsp;&nbsp;&nbsp;--enable-add-ons --libexecdir=/usr/bin &amp;&amp;
  27. cp config.make config.make.backup &amp;&amp;
  28. sed 's/cross-compiling = yes/cross-compiling = no/' \
  29. &nbsp;&nbsp;&nbsp;config.make.backup &gt; config.make &amp;&amp;
  30. make &amp;&amp;
  31. make install &amp;&amp;
  32. make localedata/install-locales &amp;&amp;
  33. cd ../glibc-&glibc-version;/linuxthreads/man &amp;&amp;
  34. make &amp;&amp;
  35. make install &amp;&amp;
  36. exec /bin/bash --login</userinput></screen></para>
  37. <para>An alternative to running <userinput>make
  38. localedata/install-locales</userinput> is to only install those locales
  39. which you need or want. This can be achieved using the localedef
  40. command. Information on this can be found in the INSTALL
  41. file in the glibc-&glibc-version; tree.</para>
  42. <para>During the configure stage you will see the following warning:</para>
  43. <blockquote><screen>configure: warning:
  44. *** These auxiliary programs are missing or too old: msgfmt
  45. *** some features will be disabled.
  46. *** Check the INSTALL file for required versions.</screen></blockquote>
  47. <para>The missing msgfmt (from the gettext package which we will install
  48. later in this chapter) is not fatal. The files msgfmt would create are
  49. already pre-built, so you won't be missing out on anything. You would
  50. only need it if you make changes to the Glibc manual files. Since we
  51. don't do this by default, we can safely ignore it.</para>
  52. </sect2>