Ignore:
Timestamp:
05/03/2004 10:59:46 AM (20 years ago)
Author:
Matthew Burgess <matthew@…>
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_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:
0c43171, 2ec64b3, a4a675f
Parents:
287ea55
Message:
  • Merged newxml into HEAD

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3435 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter06/glibc.xml

    r287ea55 r673b0d8  
     1<?xml version="1.0" encoding="ISO-8859-1"?>
     2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
     3  <!ENTITY % general-entities SYSTEM "../general.ent">
     4  %general-entities;
     5]>
    16<sect1 id="ch-system-glibc" xreflabel="Glibc">
    2 <title>Installing Glibc-&glibc-version;</title>
    3 <?dbhtml filename="glibc.html" dir="chapter06"?>
     7<title>Glibc-&glibc-version;</title>
     8<?dbhtml filename="glibc.html"?>
     9
     10<indexterm zone="ch-system-glibc"><primary sortas="a-Glibc">Glibc</primary></indexterm>
    411
    512<para>The Glibc package contains the main C library. This library provides all
     
    815arithmetic, and so on.</para>
    916
    10 <screen>&buildtime; &glibc-time;
    11 &diskspace; &glibc-compsize;</screen>
    12 
    13 &aa-glibc-down;
    14 &aa-glibc-dep;
    15 
    16 <sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
     17<screen>&buildtime; 12.3 SBU
     18&diskspace; 784 MB</screen>
     19
     20<para>Glibc installation depends on: Bash, Binutils, Coreutils, Diffutils,
     21Gawk, GCC, Gettext, Grep, Make, Perl, Sed, Texinfo.</para>
     22
     23
    1724
    1825<sect2>
     
    3643<para>Now prepare Glibc for compilation:</para>
    3744
    38 <screen><userinput>../&glibc-dir;/configure --prefix=/usr \
    39 &nbsp;&nbsp;&nbsp;&nbsp;--disable-profile --enable-add-ons=linuxthreads \
    40 &nbsp;&nbsp;&nbsp;&nbsp;--libexecdir=/usr/lib --with-headers=/usr/include \
    41 &nbsp;&nbsp;&nbsp;&nbsp;--without-cvs</userinput></screen>
     45<screen><userinput>../glibc-&glibc-version;-20031202/configure --prefix=/usr \
     46    --disable-profile --enable-add-ons=linuxthreads \
     47    --libexecdir=/usr/lib --with-headers=/usr/include \
     48    --without-cvs</userinput></screen>
    4249
    4350<para>The meaning of the new configure options:</para>
     
    107114localedef -i en_US -f ISO-8859-1 en_US
    108115localedef -i es_MX -f ISO-8859-1 es_MX
     116localedef -i fa_IR -f UTF-8 fa_IR
    109117localedef -i fr_FR -f ISO-8859-1 fr_FR
    110118localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
     
    114122<para>Finally, build the linuxthreads man pages:</para>
    115123
    116 <screen><userinput>make -C ../&glibc-dir;/linuxthreads/man</userinput></screen>
     124<screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man</userinput></screen>
    117125
    118126<para>And install these pages:</para>
    119127
    120 <screen><userinput>make -C ../&glibc-dir;/linuxthreads/man install</userinput></screen>
     128<screen><userinput>make -C ../glibc-&glibc-version;-20031202/linuxthreads/man install</userinput></screen>
    121129
    122130</sect2>
    123131
    124 <sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
    125 
    126 <sect2><title>Configuring Glibc</title>
     132
     133<sect2 id="conf-glibc"><title>Configuring Glibc</title>
     134<indexterm zone="conf-glibc"><primary sortas="e-/etc/nsswitch.conf">/etc/nsswitch.conf</primary></indexterm>
     135<indexterm zone="conf-glibc"><primary sortas="e-/etc/localtime">/etc/localtime</primary></indexterm>
    127136
    128137<para>We need to create the <filename>/etc/nsswitch.conf</filename> file,
     
    183192</sect2>
    184193
    185 <sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
    186 
    187 <sect2>
     194
     195<sect2 id="conf-ld">
    188196<title>Configuring Dynamic Loader</title>
     197<indexterm zone="conf-ld"><primary sortas="e-/etc/ld.so.conf">/etc/ld.so.conf</primary></indexterm>
    189198
    190199<para>By default, the dynamic loader
    191 (<filename>/lib/ld-linux.so.2</filename>) searches through <filename
    192 class="directory">/lib</filename> and <filename
    193 class="directory">/usr/lib</filename> for dynamic libraries that are needed
     200(<filename>/lib/ld-linux.so.2</filename>) searches through <filename 
     201class="directory">/lib</filename> and <filename class="directory">/usr/lib</filename>
     202for dynamic libraries that are needed
    194203by programs when you run them. However, if there are libraries in
    195204directories other than <filename class="directory">/lib</filename> and
     
    197206the <filename>/etc/ld.so.conf</filename> file for the dynamic
    198207loader to find them. Two directories that are commonly known to contain
    199 additional libraries are <filename
    200 class="directory">/usr/local/lib</filename> and <filename
    201 class="directory">/opt/lib</filename>, so we add those directories to the
     208additional libraries are <filename class="directory">/usr/local/lib</filename>
     209and <filename class="directory">/opt/lib</filename>, so we add those directories to the
    202210dynamic loader's search path.</para>
    203211
     
    216224</sect2>
    217225
    218 &aa-glibc-shortdesc;
    219 &aa-glibc-desc;
     226
     227<sect2 id="contents-glibc"><title>Contents of Glibc</title>
     228
     229<para><emphasis>Installed programs</emphasis>: catchsegv, gencat, getconf,
     230getent, glibcbug, iconv, iconvconfig, ldconfig, ldd, lddlibc4, locale,
     231localedef, mtrace, nscd, nscd_nischeck, pcprofiledump, pt_chown, rpcgen,
     232rpcinfo, sln, sprof, tzselect, xtrace, zdump and zic</para>
     233
     234<para><emphasis>Installed libraries</emphasis>: ld.so, libBrokenLocale.[a,so],
     235libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so], libc_nonshared.a,
     236libcrypt.[a,so], libdl.[a,so], libg.a, libieee.a, libm.[a,so], libmcheck.a,
     237libmemusage.so, libnsl.a, libnss_compat.so, libnss_dns.so, libnss_files.so,
     238libnss_hesiod.so, libnss_nis.so, libnss_nisplus.so, libpcprofile.so,
     239libpthread.[a,so], libresolv.[a,so], librpcsvc.a, librt.[a,so], libthread_db.so
     240and libutil.[a,so]</para>
     241
     242</sect2>
     243
     244
     245<sect2><title>Short descriptions</title>
     246
     247<indexterm zone="ch-system-glibc catchsegv"><primary sortas="b-catchsegv">catchsegv</primary></indexterm>
     248<para id="catchsegv"><command>catchsegv</command> can be used to create a stack trace
     249when a program terminates with a segmentation fault.</para>
     250
     251<indexterm zone="ch-system-glibc gencat"><primary sortas="b-gencat">gencat</primary></indexterm>
     252<para id="gencat"><command>gencat</command> generates message catalogues.</para>
     253
     254<indexterm zone="ch-system-glibc getconf"><primary sortas="b-getconf">getconf</primary></indexterm>
     255<para id="getconf"><command>getconf</command> displays the system configuration values
     256for file system specific variables.</para>
     257
     258<indexterm zone="ch-system-glibc getent"><primary sortas="b-getent">getent</primary></indexterm>
     259<para id="getent"><command>getent</command> gets entries from an administrative
     260database.</para>
     261
     262<indexterm zone="ch-system-glibc glibcbug"><primary sortas="b-glibcbug">glibcbug</primary></indexterm>
     263<para id="glibcbug"><command>glibcbug</command> creates a bug report and mails it to the
     264bug email address.</para>
     265
     266<indexterm zone="ch-system-glibc iconv"><primary sortas="b-iconv">iconv</primary></indexterm>
     267<para id="iconv"><command>iconv</command> performs character set conversion.</para>
     268
     269<indexterm zone="ch-system-glibc iconvconfig"><primary sortas="b-iconvconfig">iconvconfig</primary></indexterm>
     270<para id="iconvconfig"><command>iconvconfig</command> creates fastloading iconv module
     271configuration file.</para>
     272
     273<indexterm zone="ch-system-glibc ldconfig"><primary sortas="b-ldconfig">ldconfig</primary></indexterm>
     274<para id="ldconfig"><command>ldconfig</command> configures the dynamic linker runtime
     275bindings.</para>
     276
     277<indexterm zone="ch-system-glibc ldd"><primary sortas="b-ldd">ldd</primary></indexterm>
     278<para id="ldd"><command>ldd</command> reports which shared libraries are required
     279by each given program or shared library.</para>
     280
     281<indexterm zone="ch-system-glibc lddlibc4"><primary sortas="b-lddlibc4">lddlibc4</primary></indexterm>
     282<para id="lddlibc4"><command>lddlibc4</command> assists ldd with object files.</para>
     283
     284<indexterm zone="ch-system-glibc locale"><primary sortas="b-locale">locale</primary></indexterm>
     285<para id="locale"><command>locale</command> is a Perl program that tells the compiler
     286to enable or disable the use of POSIX locales for built-in operations.</para>
     287
     288<indexterm zone="ch-system-glibc localedef"><primary sortas="b-localedef">localedef</primary></indexterm>
     289<para id="localedef"><command>localedef</command> compiles locale specifications.</para>
     290
     291<indexterm zone="ch-system-glibc mtrace"><primary sortas="b-mtrace">mtrace</primary></indexterm>
     292<para id="mtrace"><command>mtrace</command>...</para>
     293
     294<indexterm zone="ch-system-glibc nscd"><primary sortas="b-nscd">nscd</primary></indexterm>
     295<para id="nscd"><command>nscd</command> is a name service cache daemon providing a
     296cache for the most common name service requests.</para>
     297
     298<indexterm zone="ch-system-glibc nscd_nischeck"><primary sortas="b-nscd_nischeck">nscd_nischeck</primary></indexterm>
     299<para id="nscd_nischeck"><command>nscd_nischeck</command> checks whether or not secure mode
     300is necessary for NIS+ lookup.</para>
     301
     302<indexterm zone="ch-system-glibc pcprofiledump"><primary sortas="b-pcprofiledump">pcprofiledump</primary></indexterm>
     303<para id="pcprofiledump"><command>pcprofiledump</command> dumps information generated by
     304PC profiling.</para>
     305
     306<indexterm zone="ch-system-glibc pt_chown"><primary sortas="b-pt_chown">pt_chown</primary></indexterm>
     307<para id="pt_chown"><command>pt_chown</command> is a helper program for grantpt to set
     308the owner, group and access permissions of a slave pseudo terminal.</para>
     309
     310<indexterm zone="ch-system-glibc rpcgen"><primary sortas="b-rpcgen">rpcgen</primary></indexterm>
     311<para id="rpcgen"><command>rpcgen</command> generates C code to implement the
     312RPC protocol.</para>
     313
     314<indexterm zone="ch-system-glibc rpcinfo"><primary sortas="b-rpcinfo">rpcinfo</primary></indexterm>
     315<para id="rpcinfo"><command>rpcinfo</command> makes an RPC call to an RPC server.</para>
     316
     317<indexterm zone="ch-system-glibc sln"><primary sortas="b-sln">sln</primary></indexterm>
     318<para id="sln"><command>sln</command> is used to make symbolic links. The program
     319is statically linked, so it is useful for making symbolic links to dynamic
     320libraries if the dynamic linking system for some reason is nonfunctional.</para>
     321
     322<indexterm zone="ch-system-glibc sprof"><primary sortas="b-sprof">sprof</primary></indexterm>
     323<para id="sprof"><command>sprof</command> reads and displays shared object profiling
     324data.</para>
     325
     326<indexterm zone="ch-system-glibc tzselect"><primary sortas="b-tzselect">tzselect</primary></indexterm>
     327<para id="tzselect"><command>tzselect</command> asks the user about the location of the
     328system and reports the corresponding time zone description.</para>
     329
     330<indexterm zone="ch-system-glibc xtrace"><primary sortas="b-xtrace">xtrace</primary></indexterm>
     331<para id="xtrace"><command>xtrace</command> traces the execution of a program by
     332printing the currently executed function.</para>
     333
     334<indexterm zone="ch-system-glibc zdump"><primary sortas="b-zdump">zdump</primary></indexterm>
     335<para id="zdump"><command>zdump</command> is the time zone dumper.</para>
     336
     337<indexterm zone="ch-system-glibc zic"><primary sortas="b-zic">zic</primary></indexterm>
     338<para id="zic"><command>zic</command> is the time zone compiler.</para>
     339
     340<indexterm zone="ch-system-glibc ld.so"><primary sortas="c-ld.so">ld.so</primary></indexterm>
     341<para id="ld.so"><command>ld.so</command> is the helper program for shared library
     342executables.</para>
     343
     344<indexterm zone="ch-system-glibc libBrokenLocale"><primary sortas="c-libBrokenLocale">libBrokenLocale</primary></indexterm>
     345<para id="libBrokenLocale"><command>libBrokenLocale</command> is used by programs, such as
     346Mozilla, to solve broken locales.</para>
     347
     348<indexterm zone="ch-system-glibc libSegFault"><primary sortas="c-libSegFault">libSegFault</primary></indexterm>
     349<para id="libSegFault"><command>libSegFault</command> is a segmentation fault signal
     350handler. It tries to catch segfaults.</para>
     351
     352<indexterm zone="ch-system-glibc libanl"><primary sortas="c-libanl">libanl</primary></indexterm>
     353<para id="libanl"><command>libanl</command> is an asynchronous name lookup
     354library.</para>
     355
     356<indexterm zone="ch-system-glibc libbsd-compat"><primary sortas="c-libbsd-compat">libbsd-compat</primary></indexterm>
     357<para id="libbsd-compat"><command>libbsd-compat</command> provides the portability needed
     358in order to run certain BSD programs under Linux.</para>
     359
     360<indexterm zone="ch-system-glibc libc"><primary sortas="c-libc">libc</primary></indexterm>
     361<para id="libc"><command>libc</command> is the main C library -- a collection of
     362commonly used functions.</para>
     363
     364<indexterm zone="ch-system-glibc libcrypt"><primary sortas="c-libcrypt">libcrypt</primary></indexterm>
     365<para id="libcrypt"><command>libcrypt</command> is the cryptography library.</para>
     366
     367<indexterm zone="ch-system-glibc libdl"><primary sortas="c-libdl">libdl</primary></indexterm>
     368<para id="libdl"><command>libdl</command> is the dynamic linking interface library.</para>
     369
     370<indexterm zone="ch-system-glibc libg"><primary sortas="c-libg">libg</primary></indexterm>
     371<para id="libg"><command>libg</command> is a runtime library for g++.</para>
     372
     373<indexterm zone="ch-system-glibc libieee"><primary sortas="c-libieee">libieee</primary></indexterm>
     374<para id="libieee"><command>libieee</command> is the IEEE floating point library.</para>
     375
     376<indexterm zone="ch-system-glibc libm"><primary sortas="c-libm">libm</primary></indexterm>
     377<para id="libm"><command>libm</command> is the mathematical library.</para>
     378
     379<indexterm zone="ch-system-glibc libmcheck"><primary sortas="c-libmcheck">libmcheck</primary></indexterm>
     380<para id="libmcheck"><command>libmcheck</command> contains code run at boot.</para>
     381
     382<indexterm zone="ch-system-glibc libmemusage"><primary sortas="c-libmemusage">libmemusage</primary></indexterm>
     383<para id="libmemusage"><command>libmemusage</command> is used by memusage to help collect
     384information about the memory usage of a program.</para>
     385
     386<indexterm zone="ch-system-glibc libnsl"><primary sortas="c-libnsl">libnsl</primary></indexterm>
     387<para id="libnsl"><command>libnsl</command> is the network services library.</para>
     388
     389<indexterm zone="ch-system-glibc libnss"><primary sortas="c-libnss*">libnss*</primary></indexterm>
     390<para id="libnss"><command>libnss*</command> are the Name Service Switch libraries,
     391containing functions for resolving host names, user names, group names,
     392aliases, services, protocols,and the like.</para>
     393
     394<indexterm zone="ch-system-glibc libpcprofile"><primary sortas="c-libpcprofile">libpcprofile</primary></indexterm>
     395<para id="libpcprofile"><command>libpcprofile</command> contains profiling functions used
     396to track the amount of CPU time spent in which source code lines.</para>
     397
     398<indexterm zone="ch-system-glibc libpthread"><primary sortas="c-libpthread">libpthread</primary></indexterm>
     399<para id="libpthread"><command>libpthread</command> is the POSIX threads library.</para>
     400
     401<indexterm zone="ch-system-glibc libresolv"><primary sortas="c-libresolv">libresolv</primary></indexterm>
     402<para id="libresolv"><command>libresolv</command> contains functions for creating,
     403sending, and interpreting packets to the Internet domain name servers.</para>
     404
     405<indexterm zone="ch-system-glibc librpcsvc"><primary sortas="c-librpcsvc">librpcsvc</primary></indexterm>
     406<para id="librpcsvc"><command>librpcsvc</command>contains functions providing
     407miscellaneous RPC services.</para>
     408
     409<indexterm zone="ch-system-glibc librt"><primary sortas="c-librt">librt</primary></indexterm>
     410<para id="librt"><command>librt</command> contains functions providing most of the
     411interfaces specified by the POSIX.1b Realtime Extension.</para>
     412
     413<indexterm zone="ch-system-glibc libthread_db"><primary sortas="c-libthread_db">libthread_db</primary></indexterm>
     414<para id="libthread_db"><command>libthread_db</command> contains functions useful for
     415building debuggers for multi-threaded programs.</para>
     416
     417<indexterm zone="ch-system-glibc libutil"><primary sortas="c-libutil">libutil</primary></indexterm>
     418<para id="libutil"><command>libutil</command> contains code for "standard" functions
     419used in many different Unix utilities.</para>
     420
     421</sect2>
     422
     423
    220424
    221425</sect1>
    222 
Note: See TracChangeset for help on using the changeset viewer.