Ignore:
Timestamp:
Feb 18, 2014, 6:10:37 AM (10 years ago)
Author:
William Harrington <kb0iic@…>
Branches:
clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
Children:
3b7a1ef
Parents:
bf75f20
Message:

Migrating EGLIBC to GLIBC since EGLIBC is end of life at 2_19 branch. Mailing list suggests using Glibc unless strict need of use from eglibc 2_19 branch. Trunk is frozen. Rename all EGLIBC and Eglibc and eglibc text to GLIBC Glibc and glibc.

File:
1 moved

Legend:

Unmodified
Added
Removed
  • BOOK/final-system/common/glibc.xml

    rbf75f20 rcbbd1e4  
    66]>
    77
    8 <sect1 id="ch-system-eglibc" role="wrap">
    9   <?dbhtml filename="eglibc.html"?>
    10 
    11   <title>EGLIBC-&eglibc-version;</title>
    12 
    13   <indexterm zone="ch-system-eglibc">
    14     <primary sortas="a-EGLIBC">EGLIBC</primary>
     8<sect1 id="ch-system-glibc" role="wrap">
     9  <?dbhtml filename="glibc.html"?>
     10
     11  <title>GLIBC-&glibc-version;</title>
     12
     13  <indexterm zone="ch-system-glibc">
     14    <primary sortas="a-GLIBC">GLIBC</primary>
    1515  </indexterm>
    1616
     
    1818    <title/>
    1919
    20     <para>The EGLIBC package contains the main C library. This library provides
     20    <para>The GLIBC package contains the main C library. This library provides
    2121    the basic routines for allocating memory, searching directories, opening and
    2222    closing files, reading and writing files, string handling, pattern matching,
     
    2626
    2727  <sect2 role="installation">
    28     <title>Installation of EGLIBC</title>
     28    <title>Installation of GLIBC</title>
    2929
    3030    <note os="z">
     
    3434      <quote>This library provides an <function>iconv()</function>
    3535      implementation, for use on systems which don't have one, or whose
    36       implementation cannot convert from/to Unicode.</quote> EGLIBC provides
     36      implementation cannot convert from/to Unicode.</quote> GLIBC provides
    3737      an <function>iconv()</function> implementation and can convert from/to
    3838      Unicode, therefore libiconv is not required on a CLFS system.</para>
     
    5858unset LINKER</userinput></screen>
    5959
    60     <para os="b">The EGLIBC build system is self-contained and will install
     60    <para os="b">The GLIBC build system is self-contained and will install
    6161    perfectly, even though the compiler specs file and linker are still
    6262    pointing at <filename class="directory">/tools</filename>. The specs
    63     and linker cannot be adjusted before the EGLIBC install because the
    64     EGLIBC Autoconf tests would give false results and defeat the goal
     63    and linker cannot be adjusted before the GLIBC install because the
     64    GLIBC Autoconf tests would give false results and defeat the goal
    6565    of achieving a clean build.</para>
    6666
    67     <para os="s1">Allow EGLIBC to detect Make-4.x:</para>
     67    <para os="s1">Allow GLIBC to detect Make-4.x:</para>
    6868
    6969<screen os="s2"><userinput>sed -r -i 's/(3..89..)/\1 | 4.*/' configure</userinput></screen>
    7070
    71     <para os="e">The EGLIBC documentation recommends building EGLIBC outside of     the source directory in a dedicated build directory:</para>
    72 
    73 <screen os="f"><userinput>mkdir -v ../eglibc-build
    74 cd ../eglibc-build</userinput></screen>
    75 
    76     <para os="g">Prepare EGLIBC for compilation:</para>
    77 
    78 <screen os="h"><userinput>../eglibc-&eglibc-version;/configure --prefix=/usr \
    79     --disable-profile --enable-kernel=2.6.32 --libexecdir=/usr/lib/eglibc \
     71    <para os="e">The GLIBC documentation recommends building GLIBC outside of     the source directory in a dedicated build directory:</para>
     72
     73<screen os="f"><userinput>mkdir -v ../glibc-build
     74cd ../glibc-build</userinput></screen>
     75
     76    <para os="g">Prepare GLIBC for compilation:</para>
     77
     78<screen os="h"><userinput>../glibc-&glibc-version;/configure --prefix=/usr \
     79    --disable-profile --enable-kernel=2.6.32 --libexecdir=/usr/lib/glibc \
    8080    --enable-obsolete-rpc</userinput></screen>
    8181
     
    8484
    8585      <varlistentry>
    86         <term><parameter>--libexecdir=/usr/lib/eglibc</parameter></term>
     86        <term><parameter>--libexecdir=/usr/lib/glibc</parameter></term>
    8787        <listitem>
    8888          <para>This changes the location of the <command>getconf</command>
    8989          utility from its default of <filename
    9090          class="directory">/usr/libexec</filename> to <filename
    91           class="directory">/usr/lib/eglibc</filename>.</para>
     91          class="directory">/usr/lib/glibc</filename>.</para>
    9292        </listitem>
    9393      </varlistentry>
     
    9999
    100100    <important os="l">
    101       <para>The test suite for EGLIBC is considered critical.
     101      <para>The test suite for GLIBC is considered critical.
    102102      Do not skip it under any circumstance.</para>
    103103    </important>
     
    108108<!-- items n,o,p no longer the master, use x86_64 which has no failures -->
    109109
    110 <screen os="n"><userinput remap="test">cp -v ../eglibc-&eglibc-version;/iconvdata/gconv-modules iconvdata
    111 make -k check 2&gt;&amp;1 | tee eglibc-check-log; grep Error eglibc-check-log</userinput></screen>
    112 
    113     <para os="o">The EGLIBC test suite is highly dependent on certain functions of
     110<screen os="n"><userinput remap="test">cp -v ../glibc-&glibc-version;/iconvdata/gconv-modules iconvdata
     111make -k check 2&gt;&amp;1 | tee glibc-check-log; grep Error glibc-check-log</userinput></screen>
     112
     113    <para os="o">The GLIBC test suite is highly dependent on certain functions of
    114114    the host system, in particular the kernel. The posix/annexc test normally fails
    115115    and you should see <literal>Error 1 (ignored)</literal> in the output. Apart
    116     from this, the EGLIBC test suite is always expected to pass. However, in certain
     116    from this, the GLIBC test suite is always expected to pass. However, in certain
    117117    circumstances, some failures are unavoidable. If a test fails because of a missing
    118118    program (or missing symbolic link), or a segfault, you will see an error code
     
    141141    </itemizedlist>
    142142
    143     <para os="q">Though it is a harmless message, the install stage of EGLIBC will
     143    <para os="q">Though it is a harmless message, the install stage of GLIBC will
    144144    complain about the absence of <filename>/etc/ld.so.conf</filename>.
    145145    Prevent this warning with:</para>
     
    155155  </sect2>
    156156
    157   <sect2 id="i18n-eglibc" role="configuration">
     157  <sect2 id="i18n-glibc" role="configuration">
    158158    <title>Internationalization</title>
    159159
     
    166166    <para>To save time, an alternative to running the previous command (which
    167167    generates and installs every locale listed in the
    168     <filename>eglibc-&eglibc-version;/localedata/SUPPORTED</filename> file) is
     168    <filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> file) is
    169169    to install only those locales that are wanted and needed. This can be
    170170    achieved by using the <command>localedef</command> command. Information on
    171171    this command is located in the <filename>INSTALL</filename> file in the
    172     EGLIBC source. However, there are a number of locales that are essential in
     172    GLIBC source. However, there are a number of locales that are essential in
    173173    order for the tests of future packages to pass, in particular, the
    174174    <emphasis>libstdc++</emphasis> tests from GCC. The following instructions,
     
    208208  </sect2>
    209209
    210   <sect2 id="conf-eglibc" role="configuration">
    211     <title>Configuring EGLIBC</title>
    212 
    213     <indexterm zone="conf-eglibc">
     210  <sect2 id="conf-glibc" role="configuration">
     211    <title>Configuring GLIBC</title>
     212
     213    <indexterm zone="conf-glibc">
    214214      <primary sortas="e-/etc/nsswitch.conf">/etc/nsswitch.conf</primary>
    215215    </indexterm>
    216216
    217     <indexterm zone="conf-eglibc">
     217    <indexterm zone="conf-glibc">
    218218      <primary sortas="e-/etc/localtime">/etc/localtime</primary>
    219219    </indexterm>
    220220
    221221    <para>The <filename>/etc/nsswitch.conf</filename> file needs to be created
    222     because, although EGLIBC provides defaults when this file is missing or
    223     corrupt, the EGLIBC defaults do not work well in a networked environment.
     222    because, although GLIBC provides defaults when this file is missing or
     223    corrupt, the GLIBC defaults do not work well in a networked environment.
    224224    The time zone also needs to be configured.</para>
    225225
     
    369369  </sect2>
    370370
    371   <sect2 id="contents-eglibc" role="content">
    372     <title>Contents of EGLIBC</title>
     371  <sect2 id="contents-glibc" role="content">
     372    <title>Contents of GLIBC</title>
    373373
    374374    <segmentedlist>
     
    396396        /usr/include/netrom, /usr/include/netrose, /usr/include/nfs,
    397397        /usr/include/protocols, /usr/include/rpc, /usr/include/rpcsvc,
    398         /usr/include/sys, /usr/lib/gconv, /usr/lib/eglibc, /usr/lib/locale,
     398        /usr/include/sys, /usr/lib/gconv, /usr/lib/glibc, /usr/lib/locale,
    399399        /usr/share/i18n, /usr/share/zoneinfo, /var/cache/ldconfig</seg>
    400400      </seglistitem>
     
    411411          <para>Can be used to create a stack trace when a program
    412412          terminates with a segmentation fault</para>
    413           <indexterm zone="ch-system-eglibc catchsegv">
     413          <indexterm zone="ch-system-glibc catchsegv">
    414414            <primary sortas="b-catchsegv">catchsegv</primary>
    415415          </indexterm>
     
    421421        <listitem>
    422422          <para>Generates message catalogues</para>
    423           <indexterm zone="ch-system-eglibc gencat">
     423          <indexterm zone="ch-system-glibc gencat">
    424424            <primary sortas="b-gencat">gencat</primary>
    425425          </indexterm>
     
    432432          <para>Displays the system configuration values for file system specific
    433433          variables</para>
    434           <indexterm zone="ch-system-eglibc getconf">
     434          <indexterm zone="ch-system-glibc getconf">
    435435            <primary sortas="b-getconf">getconf</primary>
    436436          </indexterm>
     
    442442        <listitem>
    443443          <para>Gets entries from an administrative database</para>
    444           <indexterm zone="ch-system-eglibc getent">
     444          <indexterm zone="ch-system-glibc getent">
    445445            <primary sortas="b-getent">getent</primary>
    446446          </indexterm>
     
    452452        <listitem>
    453453          <para>Performs character set conversion</para>
    454           <indexterm zone="ch-system-eglibc iconv">
     454          <indexterm zone="ch-system-glibc iconv">
    455455            <primary sortas="b-iconv">iconv</primary>
    456456          </indexterm>
     
    463463          <para>Creates fastloading <command>iconv</command> module configuration
    464464          files</para>
    465           <indexterm zone="ch-system-eglibc iconvconfig">
     465          <indexterm zone="ch-system-glibc iconvconfig">
    466466            <primary sortas="b-iconvconfig">iconvconfig</primary>
    467467          </indexterm>
     
    473473        <listitem>
    474474          <para>Configures the dynamic linker runtime bindings</para>
    475           <indexterm zone="ch-system-eglibc ldconfig">
     475          <indexterm zone="ch-system-glibc ldconfig">
    476476            <primary sortas="b-ldconfig">ldconfig</primary>
    477477          </indexterm>
     
    484484          <para>Reports which shared libraries are required
    485485          by each given program or shared library</para>
    486           <indexterm zone="ch-system-eglibc ldd">
     486          <indexterm zone="ch-system-glibc ldd">
    487487            <primary sortas="b-ldd">ldd</primary>
    488488          </indexterm>
     
    494494        <listitem>
    495495          <para>Assists <command>ldd</command> with object files</para>
    496           <indexterm zone="ch-system-eglibc lddlibc4">
     496          <indexterm zone="ch-system-glibc lddlibc4">
    497497            <primary sortas="b-lddlibc4">lddlibc4</primary>
    498498          </indexterm>
     
    505505          <para>Tells the compiler to enable or disable the use of POSIX locales
    506506          for built-in operations</para>
    507           <indexterm zone="ch-system-eglibc locale">
     507          <indexterm zone="ch-system-glibc locale">
    508508            <primary sortas="b-locale">locale</primary>
    509509          </indexterm>
     
    515515        <listitem>
    516516          <para>Compiles locale specifications</para>
    517           <indexterm zone="ch-system-eglibc localedef">
     517          <indexterm zone="ch-system-glibc localedef">
    518518            <primary sortas="b-localedef">localedef</primary>
    519519          </indexterm>
     
    525525        <listitem>
    526526          <para>Creates a simple database from textual input</para>
    527           <indexterm zone="ch-system-eglibc makedb">
     527          <indexterm zone="ch-system-glibc makedb">
    528528            <primary sortas="b-makedb">makedb</primary>
    529529          </indexterm>
     
    536536          <para>Reads and interprets a memory trace file and
    537537          displays a summary in human-readable format</para>
    538           <indexterm zone="ch-system-eglibc mtrace">
     538          <indexterm zone="ch-system-glibc mtrace">
    539539            <primary sortas="b-mtrace">mtrace</primary>
    540540          </indexterm>
     
    547547          <para>A daemon that provides a cache for the most common name
    548548          service requests</para>
    549           <indexterm zone="ch-system-eglibc nscd">
     549          <indexterm zone="ch-system-glibc nscd">
    550550            <primary sortas="b-nscd">nscd</primary>
    551551          </indexterm>
     
    557557        <listitem>
    558558          <para>Dumps information generated by PC profiling</para>
    559           <indexterm zone="ch-system-eglibc pcprofiledump">
     559          <indexterm zone="ch-system-glibc pcprofiledump">
    560560            <primary sortas="b-pcprofiledump">pcprofiledump</primary>
    561561          </indexterm>
     
    567567        <listitem>
    568568          <para>Lists dynamic shared objects used by running processes</para>
    569           <indexterm zone="ch-system-eglibc pldd">
     569          <indexterm zone="ch-system-glibc pldd">
    570570            <primary sortas="b-pldd">pldd</primary>
    571571          </indexterm>
     
    578578          <para>Generates C code to implement the Remote Procecure Call (RPC)
    579579          protocol</para>
    580           <indexterm zone="ch-system-eglibc rpcgen">
     580          <indexterm zone="ch-system-glibc rpcgen">
    581581            <primary sortas="b-rpcgen">rpcgen</primary>
    582582          </indexterm>
     
    588588        <listitem>
    589589          <para>A statically linked program that creates symbolic links</para>
    590           <indexterm zone="ch-system-eglibc sln">
     590          <indexterm zone="ch-system-glibc sln">
    591591            <primary sortas="b-sln">sln</primary>
    592592          </indexterm>
     
    598598        <listitem>
    599599          <para>Traces shared library procedure calls of a specified command</para>
    600           <indexterm zone="ch-system-eglibc sotruss">
     600          <indexterm zone="ch-system-glibc sotruss">
    601601            <primary sortas="b-sotruss">sotruss</primary>
    602602          </indexterm>
     
    608608        <listitem>
    609609          <para>Reads and displays shared object profiling data</para>
    610           <indexterm zone="ch-system-eglibc sprof">
     610          <indexterm zone="ch-system-glibc sprof">
    611611            <primary sortas="b-sprof">sprof</primary>
    612612          </indexterm>
     
    619619          <para>Asks the user about the location of the
    620620          system and reports the corresponding time zone description</para>
    621           <indexterm zone="ch-system-eglibc tzselect">
     621          <indexterm zone="ch-system-glibc tzselect">
    622622            <primary sortas="b-tzselect">tzselect</primary>
    623623          </indexterm>
     
    630630          <para>Traces the execution of a program by
    631631          printing the currently executed function</para>
    632           <indexterm zone="ch-system-eglibc xtrace">
     632          <indexterm zone="ch-system-glibc xtrace">
    633633            <primary sortas="b-xtrace">xtrace</primary>
    634634          </indexterm>
     
    640640        <listitem>
    641641          <para>The time zone dumper</para>
    642           <indexterm zone="ch-system-eglibc zdump">
     642          <indexterm zone="ch-system-glibc zdump">
    643643            <primary sortas="b-zdump">zdump</primary>
    644644          </indexterm>
     
    650650        <listitem>
    651651          <para>The time zone compiler</para>
    652           <indexterm zone="ch-system-eglibc zic">
     652          <indexterm zone="ch-system-glibc zic">
    653653            <primary sortas="b-zic">zic</primary>
    654654          </indexterm>
     
    660660        <listitem>
    661661          <para>The helper program for shared library executables</para>
    662           <indexterm zone="ch-system-eglibc ld.so">
     662          <indexterm zone="ch-system-glibc ld.so">
    663663            <primary sortas="c-ld.so">ld.so</primary>
    664664          </indexterm>
     
    670670        <listitem>
    671671          <para>Used by programs, such as Mozilla, to solve broken locales</para>
    672           <indexterm zone="ch-system-eglibc libBrokenLocale">
     672          <indexterm zone="ch-system-glibc libBrokenLocale">
    673673            <primary sortas="c-libBrokenLocale">libBrokenLocale</primary>
    674674          </indexterm>
     
    680680        <listitem>
    681681          <para>The segmentation fault signal handler</para>
    682           <indexterm zone="ch-system-eglibc libSegFault">
     682          <indexterm zone="ch-system-glibc libSegFault">
    683683            <primary sortas="c-libSegFault">libSegFault</primary>
    684684          </indexterm>
     
    690690        <listitem>
    691691          <para>An asynchronous name lookup library</para>
    692           <indexterm zone="ch-system-eglibc libanl">
     692          <indexterm zone="ch-system-glibc libanl">
    693693            <primary sortas="c-libanl">libanl</primary>
    694694          </indexterm>
     
    702702          in order to run certain Berkey Software Distribution (BSD) programs
    703703          under Linux</para>
    704           <indexterm zone="ch-system-eglibc libbsd-compat">
     704          <indexterm zone="ch-system-glibc libbsd-compat">
    705705            <primary sortas="c-libbsd-compat">libbsd-compat</primary>
    706706          </indexterm>
     
    712712        <listitem>
    713713          <para>The main C library</para>
    714           <indexterm zone="ch-system-eglibc libc">
     714          <indexterm zone="ch-system-glibc libc">
    715715            <primary sortas="c-libc">libc</primary>
    716716          </indexterm>
     
    721721        <term><filename class="libraryfile">libcidn</filename></term>
    722722        <listitem>
    723           <para>Used internally by EGLIBC for handling internationalized domain
     723          <para>Used internally by GLIBC for handling internationalized domain
    724724          names in the <function>getaddrinfo()</function> function</para>
    725           <indexterm zone="ch-system-eglibc libcidn">
     725          <indexterm zone="ch-system-glibc libcidn">
    726726            <primary sortas="c-libcidn">libcidn</primary>
    727727          </indexterm>
     
    733733        <listitem>
    734734          <para>The cryptography library</para>
    735           <indexterm zone="ch-system-eglibc libcrypt">
     735          <indexterm zone="ch-system-glibc libcrypt">
    736736            <primary sortas="c-libcrypt">libcrypt</primary>
    737737          </indexterm>
     
    743743        <listitem>
    744744          <para>The dynamic linking interface library</para>
    745           <indexterm zone="ch-system-eglibc libdl">
     745          <indexterm zone="ch-system-glibc libdl">
    746746            <primary sortas="c-libdl">libdl</primary>
    747747          </indexterm>
     
    753753        <listitem>
    754754          <para>A runtime library for <command>g++</command></para>
    755           <indexterm zone="ch-system-eglibc libg">
     755          <indexterm zone="ch-system-glibc libg">
    756756            <primary sortas="c-libg">libg</primary>
    757757          </indexterm>
     
    764764          <para>The Institute of Electrical and Electronic Engineers (IEEE)
    765765          floating point library</para>
    766           <indexterm zone="ch-system-eglibc libieee">
     766          <indexterm zone="ch-system-glibc libieee">
    767767            <primary sortas="c-libieee">libieee</primary>
    768768          </indexterm>
     
    774774        <listitem>
    775775          <para>The mathematical library</para>
    776           <indexterm zone="ch-system-eglibc libm">
     776          <indexterm zone="ch-system-glibc libm">
    777777            <primary sortas="c-libm">libm</primary>
    778778          </indexterm>
     
    784784        <listitem>
    785785          <para>Contains code run at boot</para>
    786           <indexterm zone="ch-system-eglibc libmcheck">
     786          <indexterm zone="ch-system-glibc libmcheck">
    787787            <primary sortas="c-libmcheck">libmcheck</primary>
    788788          </indexterm>
     
    793793        <term><filename class="libraryfile">libmemusage</filename></term>
    794794        <listitem>
    795           <para>Used by <command>memusage</command> (included in EGLIBC, but
     795          <para>Used by <command>memusage</command> (included in GLIBC, but
    796796          not built in a base CLFS system as it has additional dependencies)
    797797          to help collect information about the memory usage of a program</para>
    798           <indexterm zone="ch-system-eglibc libmemusage">
     798          <indexterm zone="ch-system-glibc libmemusage">
    799799            <primary sortas="c-libmemusage">libmemusage</primary>
    800800          </indexterm>
     
    806806        <listitem>
    807807          <para>The network services library</para>
    808           <indexterm zone="ch-system-eglibc libnsl">
     808          <indexterm zone="ch-system-glibc libnsl">
    809809            <primary sortas="c-libnsl">libnsl</primary>
    810810          </indexterm>
     
    818818          resolving host names, user names, group names, aliases, services,
    819819          protocols, etc.</para>
    820           <indexterm zone="ch-system-eglibc libnss">
     820          <indexterm zone="ch-system-glibc libnss">
    821821            <primary sortas="c-libnss">libnss</primary>
    822822          </indexterm>
     
    829829          <para>Contains profiling functions used to track the amount of CPU
    830830          time spent in specific source code lines</para>
    831           <indexterm zone="ch-system-eglibc libpcprofile">
     831          <indexterm zone="ch-system-glibc libpcprofile">
    832832            <primary sortas="c-libpcprofile">libpcprofile</primary>
    833833          </indexterm>
     
    839839        <listitem>
    840840          <para>The POSIX threads library</para>
    841           <indexterm zone="ch-system-eglibc libpthread">
     841          <indexterm zone="ch-system-glibc libpthread">
    842842            <primary sortas="c-libpthread">libpthread</primary>
    843843          </indexterm>
     
    850850          <para>Contains functions for creating, sending, and interpreting
    851851          packets to the Internet domain name servers</para>
    852           <indexterm zone="ch-system-eglibc libresolv">
     852          <indexterm zone="ch-system-glibc libresolv">
    853853            <primary sortas="c-libresolv">libresolv</primary>
    854854          </indexterm>
     
    860860        <listitem>
    861861          <para>Contains functions providing miscellaneous RPC services</para>
    862           <indexterm zone="ch-system-eglibc librpcsvc">
     862          <indexterm zone="ch-system-glibc librpcsvc">
    863863            <primary sortas="c-librpcsvc">librpcsvc</primary>
    864864          </indexterm>
     
    871871          <para>Contains functions providing most of the interfaces specified by
    872872          the POSIX.1b Realtime Extension</para>
    873           <indexterm zone="ch-system-eglibc librt">
     873          <indexterm zone="ch-system-glibc librt">
    874874            <primary sortas="c-librt">librt</primary>
    875875          </indexterm>
     
    882882          <para>Contains functions useful for
    883883          building debuggers for multi-threaded programs</para>
    884           <indexterm zone="ch-system-eglibc libthread_db">
     884          <indexterm zone="ch-system-glibc libthread_db">
    885885            <primary sortas="c-libthread_db">libthread_db</primary>
    886886          </indexterm>
     
    893893          <para>Contains code for <quote>standard</quote> functions used in
    894894          many different Unix utilities</para>
    895           <indexterm zone="ch-system-eglibc libutil">
     895          <indexterm zone="ch-system-glibc libutil">
    896896            <primary sortas="c-libutil">libutil</primary>
    897897          </indexterm>
Note: See TracChangeset for help on using the changeset viewer.