Changeset fa21b3d for chapter06/glibc.xml
- Timestamp:
- 01/06/2006 01:59:08 AM (18 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.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, 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:
- abf1f62
- Parents:
- 60e34b5
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter06/glibc.xml
r60e34b5 rfa21b3d 48 48 of achieving a clean build.</para> 49 49 50 <para>The glibc-libidn tarball adds support for internationalized 51 domain names (IDN) to Glibc. Many programs that 52 support IDN require the full libidn library (see 53 <ulink url="&blfs-root;view/svn/general/libidn.html"/>), 54 not this add-on. 55 Unpack the tarball from within the Glibc source 56 directory:</para> 57 58 <screen><userinput>tar jxf ../glibc-libidn-&glibc-version;.tar.bz2</userinput></screen> 59 60 <para>In the vi_VN.TCVN locale, <command>bash</command> enters an infinite loop 61 at startup. It is unknown whether this is a <command>bash</command> bug or a 62 Glibc problem. Disable installation of this locale in order to avoid the 63 problem:</para> 64 65 <screen><userinput>sed -i '/vi_VN.TCVN/d' localedata/SUPPORTED</userinput></screen> 66 50 67 <para>The Glibc documentation recommends building Glibc outside of the source 51 68 directory in a dedicated build directory:</para> … … 122 139 <para>Install the package:</para> 123 140 124 <screen><userinput>make install</userinput></screen> 141 <screen><userinput>make install_root=/ install</userinput></screen> 142 143 <para>The meaning of the make option:</para> 144 145 <variablelist> 146 <varlistentry> 147 <term><parameter>install_root=/</parameter></term> 148 <listitem><para>This causes the Glibc Makefile not to run the 149 <filename>scripts/test-installation.pl</filename> script at the end 150 of Glibc installation. Since the toolchain has not been adjusted yet for 151 the new Glibc, this script would test Glibc installed in 152 <filename class="directory">/tools</filename> and fail because the 153 libidn add-on has not been installed there.</para></listitem> 154 </varlistentry> 155 </variablelist> 125 156 126 157 <para>The locales that can make the system respond in a different 127 language were not installed by the above command. Install this 128 with:</para> 129 130 <screen><userinput>make localedata/install-locales</userinput></screen> 131 132 <para>To save time, an alternative to running the 133 previous command (which generates and installs every locale listed in the 134 glibc-&glibc-version;/localedata/SUPPORTED file) is to install only those 135 locales that are wanted and needed. This can be achieved by using the 136 <command>localedef</command> command. Information on this command is located in 137 the <filename>INSTALL</filename> file in the Glibc source. However, there 138 are a number of locales that are essential in order for the tests of 139 future packages to pass, in particular, the 140 <emphasis>libstdc++</emphasis> tests from GCC. The following 141 instructions, instead of the <parameter>install-locales</parameter> 142 target used above, will install the minimum set of locales necessary 143 for the tests to run successfully:</para> 158 language were not installed by the above command. None of the 159 locales are required, but, if some of them are misssing, testuites of the 160 future packages would skip important testcases.</para> 161 162 <para>Individual locales can be installed using the <command>localedef</command> 163 program. E.g., the first <command>localedef</command> command below combines 164 the <filename>/usr/share/i18n/locales/de_DE</filename> charset-independent 165 locale definition with the 166 <filename>/usr/share/i18n/charmaps/ISO-8859-1.gz</filename> charmap definition 167 and appends the result to the 168 <filename>/usr/lib/locale/locale-archive</filename> file. The following 169 instructions will install the minimum set of locales necessary 170 for the optimal coverage of tests:</para> 144 171 145 172 <screen role="nodump"><userinput>mkdir -pv /usr/lib/locale … … 153 180 localedef -i fr_FR -f ISO-8859-1 fr_FR 154 181 localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro 182 localedef -i fr_FR.UTF-8 -f UTF-8 fr_FR 155 183 localedef -i it_IT -f ISO-8859-1 it_IT 156 184 localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen> 157 185 158 <para>Some locales installed by the <command>make 159 localedata/install-locales</command> command above are not properly 160 supported by some applications that are in the LFS and BLFS books. 161 Because of the various problems that arise due to application 162 programmers making assumptions that break in such locales, LFS should 163 not be used in locales that utilize multibyte character sets 164 (including UTF-8) or right-to-left writing order. Numerous unofficial 165 and unstable patches are required to fix these problems, and it has 166 been decided by the LFS developers not to support such complex locales at this 167 time. This applies to the ja_JP and fa_IR locales as well—they have been 168 installed only for GCC and Gettext tests to pass, and the 169 <command>watch</command> program (part of the Procps package) does not work 170 properly in them. Various attempts to circumvent these restrictions are 171 documented in internationalization-related hints.</para> 186 <para>In addition, install the locale for your own country, language and 187 character set.</para> 188 189 <para>Alternatively, install all locales 190 listed in the <filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> 191 file (it includes every locale listed above and many more) 192 at once with the following time-consuming command:</para> 193 194 <screen><userinput>make localedata/install-locales</userinput></screen> 195 196 <para>Then use the <command>localedef</command> command to create and 197 install locales not listed in the 198 <filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> file 199 in the unlikely case if you need them.</para> 200 <!-- The Live CD patches the localedata/SUPPORTED file instead of 201 running localedef, the results are equivalent --> 172 202 173 203 </sect2> … … 278 308 rpcinfo, sln, sprof, tzselect, xtrace, zdump, and zic</seg> 279 309 <seg>ld.so, libBrokenLocale.[a,so], 280 libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so], 310 libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so], libcidn.so, 281 311 libcrypt.[a,so], libdl.[a,so], libg.a, libieee.a, libm.[a,so], libmcheck.a, 282 312 libmemusage.so, libnsl.a, libnss_compat.so, libnss_dns.so, libnss_files.so, … … 367 397 <term><command>locale</command></term> 368 398 <listitem> 369 <para>Tells the compiler to enable or disable the use of POSIX locales 370 for built-in operations</para> 399 <para>Prints various information about the current locale</para> 371 400 <indexterm zone="ch-system-glibc locale"><primary sortas="b-locale">locale</primary></indexterm> 372 401 </listitem> … … 500 529 <term><filename class="libraryfile">libBrokenLocale</filename></term> 501 530 <listitem> 502 <para>Used by programs, such as Mozilla, to solve broken locales</para> 531 <para>Used internally by Glibc as a gross hack to get broken programs 532 (e.g., some Motif applications) running. See comments in 533 <filename>glibc-&glibc-version;/locale/broken_cur_max.c</filename> for more 534 information</para> 503 535 <indexterm zone="ch-system-glibc libBrokenLocale"><primary sortas="c-libBrokenLocale">libBrokenLocale</primary></indexterm> 504 536 </listitem> … … 508 540 <term><filename class="libraryfile">libSegFault</filename></term> 509 541 <listitem> 510 <para>The segmentation fault signal handler</para> 542 <para>The segmentation fault signal handler, used by 543 <command>catchsegv</command></para> 511 544 <indexterm zone="ch-system-glibc libSegFault"><primary sortas="c-libSegFault">libSegFault</primary></indexterm> 512 545 </listitem> … … 538 571 </varlistentry> 539 572 573 <varlistentry id="libcidn"> 574 <term><filename class="libraryfile">libcidn</filename></term> 575 <listitem> 576 <para>Used internally by Glibc for handling internationalized domain names in 577 the <function>getaddrinfo()</function> function</para> 578 <indexterm zone="ch-system-glibc libcrypt"><primary sortas="c-libcrypt">libcrypt</primary></indexterm> 579 </listitem> 580 </varlistentry> 581 540 582 <varlistentry id="libcrypt"> 541 583 <term><filename class="libraryfile">libcrypt</filename></term> … … 557 599 <term><filename class="libraryfile">libg</filename></term> 558 600 <listitem> 559 <para>A runtime library for <command>g++</command></para> 601 <para>Dummy library containing no functions. Previously was a runtime library 602 for <command>g++</command></para> 560 603 <indexterm zone="ch-system-glibc libg"><primary sortas="c-libg">libg</primary></indexterm> 561 604 </listitem> … … 565 608 <term><filename class="libraryfile">libieee</filename></term> 566 609 <listitem> 567 <para>The Institute of Electrical and Electronic Engineers (IEEE) floating point library</para> 610 <para>Linking in this module forces error handling rules for math functions as 611 defined by the Institute of Electrical and Electronic Engineers (IEEE). 612 The default is POSIX.1 error handling</para> 568 613 <indexterm zone="ch-system-glibc libieee"><primary sortas="c-libieee">libieee</primary></indexterm> 569 614 </listitem> … … 581 626 <term><filename class="libraryfile">libmcheck</filename></term> 582 627 <listitem> 583 <para> Contains code run at boot</para>628 <para>Turns on memory allocation checking when linked to</para> 584 629 <indexterm zone="ch-system-glibc libmcheck"><primary sortas="c-libmcheck">libmcheck</primary></indexterm> 585 630 </listitem>
Note:
See TracChangeset
for help on using the changeset viewer.