Changeset 73aedd1d for chapter06/glibc.xml
- Timestamp:
- 11/01/2003 10:31:50 PM (21 years ago)
- Branches:
- 10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, 6.0, 6.1, 6.1.1, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.5-systemd, 7.6, 7.6-systemd, 7.7, 7.7-systemd, 7.8, 7.8-systemd, 7.9, 7.9-systemd, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, v5_0, v5_1, v5_1_1, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
- Children:
- 49f4dd5
- Parents:
- 0b400add
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter06/glibc.xml
r0b400add r73aedd1d 8 8 &aa-glibc-shortdesc; 9 9 &aa-glibc-dep; 10 &c6-glibc-inst; 11 &c6-cf-glibc; 10 11 <sect2><title> </title><para> </para></sect2> 12 13 <sect2> 14 <title>Glibc installation</title> 15 16 <para>The Glibc build system is very well self-contained and will install 17 perfectly, even though our compiler specs file and linker are still pointing 18 at <filename>/tools</filename>. We cannot adjust the specs and linker before 19 the Glibc install, because the Glibc autoconf tests would then give bogus 20 results and thus defeat our goal of achieving a clean build.</para> 21 22 <note><para>The test suite for Glibc in this section is considered 23 <emphasis>critical</emphasis>. Our advice is to not skip it under any 24 circumstance.</para></note> 25 26 <para>Before starting to build Glibc, remember to unpack the Glibc-linuxthreads 27 again inside the <filename>glibc-&glibc-version;</filename> directory, and to 28 unset any environment variables that override the default optimization 29 flags.</para> 30 31 <para>Though it is a harmless message, the install stage of Glibc will 32 complain about the absence of <filename>/etc/ld.so.conf</filename>. Fix this 33 annoying little warning with:</para> 34 35 <screen><userinput>touch /etc/ld.so.conf</userinput></screen> 36 37 <para>Then apply the same patch we used previously:</para> 38 39 <screen><userinput>patch -Np1 -i ../&glibc-sscanf-patch;</userinput></screen> 40 41 <para>The Glibc documentation recommends building Glibc outside of the source 42 directory in a dedicated build directory:</para> 43 44 <screen><userinput>mkdir ../glibc-build 45 cd ../glibc-build</userinput></screen> 46 47 <para>Now prepare Glibc for compilation:</para> 48 49 <screen><userinput>../glibc-&glibc-version;/configure --prefix=/usr \ 50 --disable-profile --enable-add-ons \ 51 --libexecdir=/usr/bin --with-headers=/usr/include</userinput></screen> 52 53 <para>The meaning of the new configure options:</para> 54 55 <itemizedlist> 56 <listitem><para><userinput>--libexecdir=/usr/bin</userinput>: This will 57 cause the <filename>pt_chown</filename> program to be installed in the 58 <filename>/usr/bin</filename> directory.</para></listitem> 59 60 <listitem><para><userinput>--with-headers=/usr/include</userinput>: This 61 ensures that the kernel headers in <filename>/usr/include</filename> are used 62 for this build. If you don't pass this switch then the headers from 63 <filename>/tools/include</filename> are used which of course is not ideal 64 (although they should be identical). Using this switch has the advantage 65 that you will be informed immediately should you have forgotten to install the 66 kernel headers into <filename>/usr/include</filename>.</para></listitem> 67 </itemizedlist> 68 69 <para>Compile the package:</para> 70 71 <screen><userinput>make</userinput></screen> 72 73 <para>Test the results:</para> 74 75 <screen><userinput>make check</userinput></screen> 76 77 <para>The test suite notes from <xref linkend="ch05-glibc"/> are still very much 78 appropriate here. Be sure to refer back there should you have any doubts.</para> 79 80 <para>And install the package:</para> 81 82 <screen><userinput>make install</userinput></screen> 83 84 <para>The locales that can make your system respond in a different language 85 weren't installed by the above command. Do it with this:</para> 86 87 <screen><userinput>make localedata/install-locales</userinput></screen> 88 89 <para>An alternative to running the previous command is to install only those 90 locales which you need or want. This can be achieved using the 91 <userinput>localedef</userinput> command. Information on this can be found in 92 the <filename>INSTALL</filename> file in the 93 <filename>glibc-&glibc-version;</filename> tree. However, there are a number 94 of locales that are essential for the tests of future packages to pass 95 correctly. The following instructions, in place of the install-locales 96 command above, will install the minimum set of locales necessary for the 97 tests to run successfully:</para> 98 99 <screen><userinput>mkdir -p /usr/lib/locale 100 localedef -i de_DE -f ISO-8859-1 de_DE 101 localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro 102 localedef -i en_HK -f ISO-8859-1 en_HK 103 localedef -i en_PH -f ISO-8859-1 en_PH 104 localedef -i en_US -f ISO-8859-1 en_US 105 localedef -i es_MX -f ISO-8859-1 es_MX 106 localedef -i fr_FR -f ISO-8859-1 fr_FR 107 localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro 108 localedef -i it_IT -f ISO-8859-1 it_IT 109 localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen> 110 111 <para>Finally, build the linuxthreads man pages:</para> 112 113 <screen><userinput>make -C ../&glibc-dir;/linuxthreads/man</userinput></screen> 114 115 <para>And install these pages:</para> 116 117 <screen><userinput>make -C ../&glibc-dir;/linuxthreads/man install</userinput></screen> 118 119 </sect2> 12 120 13 121 </sect1>
Note:
See TracChangeset
for help on using the changeset viewer.