source: clfs-sysroot/BOOK/cross-tools/common/glibc.xml @ 59fb197

Last change on this file since 59fb197 was 59fb197, checked in by Jim Gifford <clfs@…>, 13 years ago

r3817@server (orig r1719): jciccone | 2006-06-05 13:56:36 -0700
Brought the clfs-2.0 branch up to trunk.

  • Property mode set to 100644
File size: 31.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4  <!ENTITY % general-entities SYSTEM "../../general.ent">
5  %general-entities;
6]>
7
8<sect1 id="ch-cross-tools-glibc" role="wrap">
9  <?dbhtml filename="glibc.html"?>
10
11  <title>Glibc-&glibc-version;</title>
12
13  <indexterm zone="ch-cross-tools-glibc">
14    <primary sortas="a-Glibc">Glibc</primary>
15    <secondary>cross tools</secondary>
16  </indexterm>
17
18  <sect2 role="package">
19    <title/>
20
21    <para>The Glibc package contains the main C library. This library provides
22    the basic routines for allocating memory, searching directories, opening and
23    closing files, reading and writing files, string handling, pattern matching,
24    arithmetic, and so on.</para>
25
26  </sect2>
27
28  <sect2 role="installation">
29    <title>Installation of Glibc</title>
30
31    <note os="a">
32      <para>Some packages outside of LFS suggest installing GNU libiconv in
33      order to translate data from one encoding to another. The project's
34      home page (<ulink url="http://www.gnu.org/software/libiconv/"/>) says
35      <quote>This library provides an <function>iconv()</function>
36      implementation, for use on systems which don't have one, or whose
37      implementation cannot convert from/to Unicode.</quote> Glibc provides
38      an <function>iconv()</function> implementation and can convert from/to
39      Unicode, therefore libiconv is not required on an LFS system.</para>
40    </note>
41
42    <para os="p1">Disable linking to <filename>libgcc_eh</filename>:</para>
43
44<screen os="p2"><userinput>patch -Np1 -i ../&glibc-libgcc_eh-patch;</userinput></screen>
45
46    <para os="p3">The following patch fixes an issue that can
47    cause <command>localdef</command> to segfault:</para>
48
49<screen os="p4"><userinput>patch -Np1 -i ../&glibc-localedef_segfault-patch;</userinput></screen>
50
51    <para os="b">The Glibc documentation recommends building Glibc outside of the
52    source directory in a dedicated build directory:</para>
53
54<screen os="c"><userinput>mkdir -v ../glibc-build
55cd ../glibc-build</userinput></screen>
56
57    <para os="d">The following lines need to be added to
58    <filename>config.cache</filename> for Glibc to support NPTL:</para>
59
60<screen os="e"><userinput>echo "libc_cv_forced_unwind=yes" &gt; config.cache
61echo "libc_cv_c_cleanup=yes" &gt;&gt; config.cache</userinput></screen>
62
63    <para os="f">The following line needs to be added to
64    <filename>configparms</filename> to adjust instalation paths:</para>
65
66<screen os="g"><userinput>echo "install_root=${LFS}" &gt; configparms</userinput></screen>
67
68    <para os="h">Prepare Glibc for compilation:</para>
69
70<screen os="i"><userinput>BUILD_CC="gcc" CC="${LFS_TARGET}-gcc" \
71    AR="${LFS_TARGET}-ar" RANLIB="${LFS_TARGET}-ranlib" \
72    ../glibc-&glibc-version;/configure --prefix=/usr --libexecdir=/usr/lib/glibc \
73    --host=${LFS_TARGET} --build=${LFS_HOST} \
74    --disable-profile --enable-add-ons \
75    --with-tls --enable-kernel=2.6.0 --with-__thread \
76    --with-binutils=/cross-tools/bin --with-headers=${LFS}/usr/include \
77    --cache-file=config.cache</userinput></screen>
78
79    <variablelist os="j">
80      <title>The meaning of the new configure options:</title>
81
82      <varlistentry os="j1">
83        <term><parameter>BUILD_CC="gcc"</parameter></term>
84        <listitem>
85          <para>This sets Glibc to use the current compiler on our system. This is
86          used to create the tools Glibc uses during its build.</para>
87        </listitem>
88      </varlistentry>
89
90      <varlistentry os="j2">
91        <term><parameter>CC="${LFS_TARGET}-gcc"</parameter></term>
92        <listitem>
93          <para>This forces Glibc to use the GCC compiler that we made for our target
94          architecture.</para>
95        </listitem>
96      </varlistentry>
97
98      <varlistentry os="j3">
99        <term><parameter>AR="${LFS_TARGET}-ar"</parameter></term>
100        <listitem>
101          <para>This forces Glibc to use the <command>ar</command> utility
102          we made for our target architecture.</para>
103        </listitem>
104      </varlistentry>
105
106      <varlistentry os="j4">
107        <term><parameter>RANLIB="${LFS_TARGET}-ranlib"</parameter></term>
108        <listitem>
109          <para>This forces Glibc to use the <command>ranlib</command> utility
110          we made for our target architecture.</para>
111        </listitem>
112      </varlistentry>
113
114      <varlistentry os="j5">
115        <term><parameter>--disable-profile</parameter></term>
116        <listitem>
117          <para>This builds the libraries without profiling information.
118          Omit this option if profiling on the temporary tools is necessary.</para>
119        </listitem>
120      </varlistentry>
121
122      <varlistentry os="j6">
123        <term><parameter>--enable-add-ons</parameter></term>
124        <listitem>
125          <para>This tells Glibc to utilize all add-ons that are
126          available.</para>
127        </listitem>
128      </varlistentry>
129
130      <varlistentry os="j7">
131        <term><parameter>--with-tls</parameter></term>
132        <listitem>
133          <para>This tells Glibc to use Thread Local Storage.</para>
134        </listitem>
135      </varlistentry>
136
137      <varlistentry os="j8">
138        <term><parameter>--with-__thread</parameter></term>
139        <listitem>
140          <para>This tells Glibc to use use the __thread for libc and
141          libpthread builds.</para>
142        </listitem>
143      </varlistentry>
144
145      <varlistentry os="j9">
146        <term><parameter>--with-binutils=/cross-tools/bin</parameter></term>
147        <listitem>
148          <para>This tells Glibc to use the Binutils that are specific to
149          our target architecture.</para>
150        </listitem>
151      </varlistentry>
152
153      <varlistentry os="j10">
154        <term><parameter>--cache-file=config.cache</parameter></term>
155        <listitem>
156          <para>This tells Glibc to utilize a premade cache file.</para>
157        </listitem>
158      </varlistentry>
159
160    </variablelist>
161
162    <para os="k">During this stage the following warning might appear:</para>
163
164<blockquote os="l"><screen><computeroutput>configure: WARNING:
165*** These auxiliary programs are missing or
166*** incompatible versions: msgfmt
167*** some features will be disabled.
168*** Check the INSTALL file for required versions.</computeroutput></screen></blockquote>
169
170    <para os="m">The missing or incompatible <command>msgfmt</command> program is
171    generally harmless. This <command>msgfmt</command> program is part of the
172    Gettext package which the host distribution should provide.</para>
173
174    <para os="n">Compile the package:</para>
175
176<screen os="o"><userinput>make</userinput></screen>
177
178    <para os="p">Install the package:</para>
179
180<screen os="q"><userinput>make install</userinput></screen>
181
182  </sect2>
183
184  <sect2 id="i18n-glibc" role="configuration">
185    <title>Internationalization (Current method is no good, REWRITE ME)</title>
186
187    <para>The locales that can make the system respond in a different
188    language were not installed by the above command. Install them
189    with:</para>
190
191<screen><userinput>make localedata/install-locales</userinput></screen>
192
193    <para>To save time, an alternative to running the previous command (which
194    generates and installs every locale listed in the
195    glibc-&glibc-version;/localedata/SUPPORTED file) is to install only
196    those locales that are wanted and needed. This can be achieved by using
197    the <command>localedef</command> command. Information on this command is
198    located in the <filename>INSTALL</filename> file in the Glibc source.
199    However, there are a number of locales that are essential in order for the
200    tests of future packages to pass, in particular, the
201    <emphasis>libstdc++</emphasis> tests from GCC. The following instructions,
202    instead of the <parameter>install-locales</parameter> target used above,
203    will install the minimum set of locales necessary for the tests to run
204    successfully:</para>
205
206<screen role="nodump"><userinput>mkdir -pv /usr/lib/locale
207localedef -i de_DE -f ISO-8859-1 de_DE
208localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro
209localedef -i en_HK -f ISO-8859-1 en_HK
210localedef -i en_PH -f ISO-8859-1 en_PH
211localedef -i en_US -f ISO-8859-1 en_US
212localedef -i es_MX -f ISO-8859-1 es_MX
213localedef -i fa_IR -f UTF-8 fa_IR
214localedef -i fr_FR -f ISO-8859-1 fr_FR
215localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
216localedef -i it_IT -f ISO-8859-1 it_IT
217localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>
218
219    <para>Some locales installed by the <command>make
220    localedata/install-locales</command> command above are not properly
221    supported by some applications that are in the LFS and BLFS books. Because
222    of the various problems that arise due to application programmers making
223    assumptions that break in such locales, LFS should not be used in locales
224    that utilize multibyte character sets (including UTF-8) or right-to-left
225    writing order.  Numerous unofficial and unstable patches are required to
226    fix these problems, and it has been decided by the LFS developers not to
227    support such complex locales at this time. This applies to the ja_JP and
228    fa_IR locales as well&mdash;they have been installed only for GCC and
229    Gettext tests to pass, and the <command>watch</command> program (part of
230    the Procps package) does not work properly in them. Various attempts to
231    circumvent these restrictions are documented in internationalization-related
232    hints.</para>
233
234  </sect2>
235
236  <sect2 id="conf-glibc" role="configuration">
237    <title>Configuring Glibc</title>
238
239    <indexterm zone="conf-glibc">
240      <primary sortas="e-/etc/nsswitch.conf">/etc/nsswitch.conf</primary>
241    </indexterm>
242
243    <indexterm zone="conf-glibc">
244      <primary sortas="e-/etc/localtime">/etc/localtime</primary>
245    </indexterm>
246
247    <para>The <filename>/etc/nsswitch.conf</filename> file needs to be created
248    because, although Glibc provides defaults when this file is missing or
249    corrupt, the Glibc defaults do not work well in a networked environment.
250    The time zone also needs to be configured.</para>
251
252    <para>Create a new file <filename>/etc/nsswitch.conf</filename> by running
253    the following:</para>
254
255<screen><userinput>cat &gt; ${LFS}/etc/nsswitch.conf &lt;&lt; "EOF"
256<literal># Begin /etc/nsswitch.conf
257
258passwd: files
259group: files
260shadow: files
261
262hosts: files dns
263networks: files
264
265protocols: files
266services: files
267ethers: files
268rpc: files
269
270# End /etc/nsswitch.conf</literal>
271EOF</userinput></screen>
272
273    <para>To determine the local time zone, run the following script:</para>
274
275<screen role="nodump"><userinput>tzselect</userinput></screen>
276
277    <para>After answering a few questions about the location, the script will
278    output the name of the time zone (e.g., <emphasis>EST5EDT</emphasis> or
279    <emphasis>Canada/Eastern</emphasis>). Then create the
280    <filename>/etc/localtime</filename> file by running:</para>
281
282<screen><userinput>cp -v --remove-destination /usr/share/zoneinfo/<replaceable>[xxx]</replaceable> \
283    /etc/localtime</userinput></screen>
284
285    <para>Replace <replaceable>[xxx]</replaceable> with the name of the time zone
286    that <command>tzselect</command> provided (e.g., Canada/Eastern).</para>
287
288    <variablelist>
289      <title>The meaning of the cp option:</title>
290
291      <varlistentry>
292        <term><parameter>--remove-destination</parameter></term>
293        <listitem>
294          <para>This is needed to force removal of the already existing symbolic
295          link. The reason for copying the file instead of using a symlink is to
296          cover the situation where <filename class="directory">/usr</filename>
297          is on a separate partition. This could be important when booted into
298          single user mode.</para>
299        </listitem>
300      </varlistentry>
301    </variablelist>
302
303  </sect2>
304
305  <sect2 id="conf-ld" role="configuration">
306    <title>Configuring The Dynamic Loader</title>
307
308    <indexterm zone="conf-ld">
309      <primary sortas="e-/etc/ld.so.conf">/etc/ld.so.conf</primary>
310    </indexterm>
311
312    <para>By default, the dynamic loader (<filename
313    class="libraryfile">/lib/ld-linux.so.2</filename>) searches through
314    <filename class="directory">/lib</filename> and <filename
315    class="directory">/usr/lib</filename> for dynamic libraries that are
316    needed by programs as they are run. However, if there are libraries in
317    directories other than <filename class="directory">/lib</filename> and
318    <filename class="directory">/usr/lib</filename>, these need to be
319    added to the <filename>/etc/ld.so.conf</filename> file in order
320    for the dynamic loader to find them. Two directories that are commonly
321    known to contain additional libraries are <filename
322    class="directory">/usr/local/lib</filename> and <filename
323    class="directory">/opt/lib</filename>, so add those directories to the
324    dynamic loader's search path.</para>
325
326    <para>Create a new file <filename>/etc/ld.so.conf</filename> by running the
327    following:</para>
328
329<screen><userinput>cat &gt; ${LFS}/etc/ld.so.conf &lt;&lt; "EOF"
330<literal># Begin /etc/ld.so.conf
331
332/usr/local/lib
333/opt/lib
334
335# End /etc/ld.so.conf</literal>
336EOF</userinput></screen>
337
338  </sect2>
339
340  <sect2 id="contents-glibc" role="content">
341    <title>Contents of Glibc</title>
342
343    <segmentedlist>
344      <segtitle>Installed programs</segtitle>
345      <segtitle>Installed libraries</segtitle>
346
347      <seglistitem>
348        <seg>catchsegv, gencat, getconf, getent, iconv, iconvconfig, ldconfig,
349        ldd, lddlibc4, locale, localedef, mtrace, nscd,
350        pcprofiledump, pt_chown, rpcgen, rpcinfo, sln, sprof, tzselect, xtrace,
351        zdump, and zic</seg>
352        <seg>ld.so, libBrokenLocale.[a,so], libSegFault.so, libanl.[a,so],
353        libbsd-compat.a, libc.[a,so], libcrypt.[a,so], libdl.[a,so], libg.a,
354        libieee.a, libm.[a,so], libmcheck.a, libmemusage.so, libnsl.a,
355        libnss_compat.so, libnss_dns.so, libnss_files.so, libnss_hesiod.so,
356        libnss_nis.so, libnss_nisplus.so, libpcprofile.so, libpthread.[a,so],
357        libresolv.[a,so], librpcsvc.a, librt.[a,so], libthread_db.so, and
358        libutil.[a,so]</seg>
359      </seglistitem>
360    </segmentedlist>
361
362    <variablelist>
363      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
364      <?dbfo list-presentation="list"?>
365      <?dbhtml list-presentation="table"?>
366
367      <varlistentry id="catchsegv">
368        <term><command>catchsegv</command></term>
369        <listitem>
370          <para>Can be used to create a stack trace when a program
371          terminates with a segmentation fault</para>
372          <indexterm zone="ch-cross-tools-glibc catchsegv">
373            <primary sortas="b-catchsegv">catchsegv</primary>
374          </indexterm>
375        </listitem>
376      </varlistentry>
377
378      <varlistentry id="gencat">
379        <term><command>gencat</command></term>
380        <listitem>
381          <para>Generates message catalogues</para>
382          <indexterm zone="ch-cross-tools-glibc gencat">
383            <primary sortas="b-gencat">gencat</primary>
384          </indexterm>
385        </listitem>
386      </varlistentry>
387
388      <varlistentry id="getconf">
389        <term><command>getconf</command></term>
390        <listitem>
391          <para>Displays the system configuration values for file system specific
392          variables</para>
393          <indexterm zone="ch-cross-tools-glibc getconf">
394            <primary sortas="b-getconf">getconf</primary>
395          </indexterm>
396        </listitem>
397      </varlistentry>
398
399      <varlistentry id="getent">
400        <term><command>getent</command></term>
401        <listitem>
402          <para>Gets entries from an administrative database</para>
403          <indexterm zone="ch-cross-tools-glibc getent">
404            <primary sortas="b-getent">getent</primary>
405          </indexterm>
406        </listitem>
407      </varlistentry>
408
409      <varlistentry id="iconv">
410        <term><command>iconv</command></term>
411        <listitem>
412          <para>Performs character set conversion</para>
413          <indexterm zone="ch-cross-tools-glibc iconv">
414            <primary sortas="b-iconv">iconv</primary>
415          </indexterm>
416        </listitem>
417      </varlistentry>
418
419      <varlistentry id="iconvconfig">
420        <term><command>iconvconfig</command></term>
421        <listitem>
422          <para>Creates fastloading <command>iconv</command> module configuration
423          files</para>
424          <indexterm zone="ch-cross-tools-glibc iconvconfig">
425            <primary sortas="b-iconvconfig">iconvconfig</primary>
426          </indexterm>
427        </listitem>
428      </varlistentry>
429
430      <varlistentry id="ldconfig">
431        <term><command>ldconfig</command></term>
432        <listitem>
433          <para>Configures the dynamic linker runtime bindings</para>
434          <indexterm zone="ch-cross-tools-glibc ldconfig">
435            <primary sortas="b-ldconfig">ldconfig</primary>
436          </indexterm>
437        </listitem>
438      </varlistentry>
439
440      <varlistentry id="ldd">
441        <term><command>ldd</command></term>
442        <listitem>
443          <para>Reports which shared libraries are required
444          by each given program or shared library</para>
445          <indexterm zone="ch-cross-tools-glibc ldd">
446            <primary sortas="b-ldd">ldd</primary>
447          </indexterm>
448        </listitem>
449      </varlistentry>
450
451      <varlistentry id="lddlibc4">
452        <term><command>lddlibc4</command></term>
453        <listitem>
454          <para>Assists <command>ldd</command> with object files</para>
455          <indexterm zone="ch-cross-tools-glibc lddlibc4">
456            <primary sortas="b-lddlibc4">lddlibc4</primary>
457          </indexterm>
458        </listitem>
459      </varlistentry>
460
461      <varlistentry id="locale">
462        <term><command>locale</command></term>
463        <listitem>
464          <para>Tells the compiler to enable or disable the use of POSIX locales
465          for built-in operations</para>
466          <indexterm zone="ch-cross-tools-glibc locale">
467            <primary sortas="b-locale">locale</primary>
468          </indexterm>
469        </listitem>
470      </varlistentry>
471
472      <varlistentry id="localedef">
473        <term><command>localedef</command></term>
474        <listitem>
475          <para>Compiles locale specifications</para>
476          <indexterm zone="ch-cross-tools-glibc localedef">
477            <primary sortas="b-localedef">localedef</primary>
478          </indexterm>
479        </listitem>
480      </varlistentry>
481
482      <varlistentry id="mtrace">
483        <term><command>mtrace</command></term>
484        <listitem>
485          <para>Reads and interprets a memory trace file and
486          displays a summary in human-readable format</para>
487          <indexterm zone="ch-cross-tools-glibc mtrace">
488            <primary sortas="b-mtrace">mtrace</primary>
489          </indexterm>
490        </listitem>
491      </varlistentry>
492
493      <varlistentry id="nscd">
494        <term><command>nscd</command></term>
495        <listitem>
496          <para>A daemon that provides a cache for the most common name
497          service requests</para>
498          <indexterm zone="ch-cross-tools-glibc nscd">
499            <primary sortas="b-nscd">nscd</primary>
500          </indexterm>
501        </listitem>
502      </varlistentry>
503
504      <varlistentry id="pcprofiledump">
505        <term><command>pcprofiledump</command></term>
506        <listitem>
507          <para>Dumps information generated by PC profiling</para>
508          <indexterm zone="ch-cross-tools-glibc pcprofiledump">
509            <primary sortas="b-pcprofiledump">pcprofiledump</primary>
510          </indexterm>
511        </listitem>
512      </varlistentry>
513
514      <varlistentry id="pt_chown">
515        <term><command>pt_chown</command></term>
516        <listitem>
517          <para>A helper program for <command>grantpt</command> to set the owner,
518          group and access permissions of a slave pseudo terminal</para>
519          <indexterm zone="ch-cross-tools-glibc pt_chown">
520            <primary sortas="b-pt_chown">pt_chown</primary>
521          </indexterm>
522        </listitem>
523      </varlistentry>
524
525      <varlistentry id="rpcgen">
526        <term><command>rpcgen</command></term>
527        <listitem>
528          <para>Generates C code to implement the Remote Procecure Call (RPC)
529          protocol</para>
530          <indexterm zone="ch-cross-tools-glibc rpcgen">
531            <primary sortas="b-rpcgen">rpcgen</primary>
532          </indexterm>
533        </listitem>
534      </varlistentry>
535
536      <varlistentry id="rpcinfo">
537        <term><command>rpcinfo</command></term>
538        <listitem>
539          <para>Makes an RPC call to an RPC server</para>
540          <indexterm zone="ch-cross-tools-glibc rpcinfo">
541            <primary sortas="b-rpcinfo">rpcinfo</primary>
542          </indexterm>
543        </listitem>
544      </varlistentry>
545
546      <varlistentry id="sln">
547        <term><command>sln</command></term>
548        <listitem>
549          <para>A statically linked <command>ln</command> program</para>
550          <indexterm zone="ch-cross-tools-glibc sln">
551            <primary sortas="b-sln">sln</primary>
552          </indexterm>
553        </listitem>
554      </varlistentry>
555
556      <varlistentry id="sprof">
557        <term><command>sprof</command></term>
558        <listitem>
559          <para>Reads and displays shared object profiling data</para>
560          <indexterm zone="ch-cross-tools-glibc sprof">
561            <primary sortas="b-sprof">sprof</primary>
562          </indexterm>
563        </listitem>
564      </varlistentry>
565
566      <varlistentry id="tzselect">
567        <term><command>tzselect</command></term>
568        <listitem>
569          <para>Asks the user about the location of the
570          system and reports the corresponding time zone description</para>
571          <indexterm zone="ch-cross-tools-glibc tzselect">
572            <primary sortas="b-tzselect">tzselect</primary>
573          </indexterm>
574        </listitem>
575      </varlistentry>
576
577      <varlistentry id="xtrace">
578        <term><command>xtrace</command></term>
579        <listitem>
580          <para>Traces the execution of a program by
581          printing the currently executed function</para>
582          <indexterm zone="ch-cross-tools-glibc xtrace">
583            <primary sortas="b-xtrace">xtrace</primary>
584          </indexterm>
585        </listitem>
586      </varlistentry>
587
588      <varlistentry id="zdump">
589        <term><command>zdump</command></term>
590        <listitem>
591          <para>The time zone dumper</para>
592          <indexterm zone="ch-cross-tools-glibc zdump">
593            <primary sortas="b-zdump">zdump</primary>
594          </indexterm>
595        </listitem>
596      </varlistentry>
597
598      <varlistentry id="zic">
599        <term><command>zic</command></term>
600        <listitem>
601          <para>The time zone compiler</para>
602          <indexterm zone="ch-cross-tools-glibc zic">
603            <primary sortas="b-zic">zic</primary>
604          </indexterm>
605        </listitem>
606      </varlistentry>
607
608      <varlistentry id="ld.so">
609        <term><filename class="libraryfile">ld.so</filename></term>
610        <listitem>
611          <para>The helper program for shared library executables</para>
612          <indexterm zone="ch-cross-tools-glibc ld.so">
613            <primary sortas="c-ld.so">ld.so</primary>
614          </indexterm>
615        </listitem>
616      </varlistentry>
617
618      <varlistentry id="libBrokenLocale">
619        <term><filename class="libraryfile">libBrokenLocale</filename></term>
620        <listitem>
621          <para>Used by programs, such as Mozilla, to solve broken locales</para>
622          <indexterm zone="ch-cross-tools-glibc libBrokenLocale">
623            <primary sortas="c-libBrokenLocale">libBrokenLocale</primary>
624          </indexterm>
625        </listitem>
626      </varlistentry>
627
628      <varlistentry id="libSegFault">
629        <term><filename class="libraryfile">libSegFault</filename></term>
630        <listitem>
631          <para>The segmentation fault signal handler</para>
632          <indexterm zone="ch-cross-tools-glibc libSegFault">
633            <primary sortas="c-libSegFault">libSegFault</primary>
634          </indexterm>
635        </listitem>
636      </varlistentry>
637
638      <varlistentry id="libanl">
639        <term><filename class="libraryfile">libanl</filename></term>
640        <listitem>
641          <para>An asynchronous name lookup library</para>
642          <indexterm zone="ch-cross-tools-glibc libanl">
643            <primary sortas="c-libanl">libanl</primary>
644          </indexterm>
645        </listitem>
646      </varlistentry>
647
648      <varlistentry id="libbsd-compat">
649        <term><filename class="libraryfile">libbsd-compat</filename></term>
650        <listitem>
651          <para>Provides the portability needed
652          in order to run certain Berkey Software Distribution (BSD) programs
653          under Linux</para>
654          <indexterm zone="ch-cross-tools-glibc libbsd-compat">
655            <primary sortas="c-libbsd-compat">libbsd-compat</primary>
656          </indexterm>
657        </listitem>
658      </varlistentry>
659
660      <varlistentry id="libc">
661        <term><filename class="libraryfile">libc</filename></term>
662        <listitem>
663          <para>The main C library</para>
664          <indexterm zone="ch-cross-tools-glibc libc">
665            <primary sortas="c-libc">libc</primary>
666          </indexterm>
667        </listitem>
668      </varlistentry>
669
670      <varlistentry id="libcrypt">
671        <term><filename class="libraryfile">libcrypt</filename></term>
672        <listitem>
673          <para>The cryptography library</para>
674          <indexterm zone="ch-cross-tools-glibc libcrypt">
675            <primary sortas="c-libcrypt">libcrypt</primary>
676          </indexterm>
677        </listitem>
678      </varlistentry>
679
680      <varlistentry id="libdl">
681        <term><filename class="libraryfile">libdl</filename></term>
682        <listitem>
683          <para>The dynamic linking interface library</para>
684          <indexterm zone="ch-cross-tools-glibc libdl">
685            <primary sortas="c-libdl">libdl</primary>
686          </indexterm>
687        </listitem>
688      </varlistentry>
689
690      <varlistentry id="libg">
691        <term><filename class="libraryfile">libg</filename></term>
692        <listitem>
693          <para>A runtime library for <command>g++</command></para>
694          <indexterm zone="ch-cross-tools-glibc libg">
695            <primary sortas="c-libg">libg</primary>
696          </indexterm>
697        </listitem>
698      </varlistentry>
699
700      <varlistentry id="libieee">
701        <term><filename class="libraryfile">libieee</filename></term>
702        <listitem>
703          <para>The Institute of Electrical and Electronic Engineers (IEEE)
704          floating point library</para>
705          <indexterm zone="ch-cross-tools-glibc libieee">
706            <primary sortas="c-libieee">libieee</primary>
707          </indexterm>
708        </listitem>
709      </varlistentry>
710
711      <varlistentry id="libm">
712        <term><filename class="libraryfile">libm</filename></term>
713        <listitem>
714          <para>The mathematical library</para>
715          <indexterm zone="ch-cross-tools-glibc libm">
716            <primary sortas="c-libm">libm</primary>
717          </indexterm>
718        </listitem>
719      </varlistentry>
720
721      <varlistentry id="libmcheck">
722        <term><filename class="libraryfile">libmcheck</filename></term>
723        <listitem>
724          <para>Contains code run at boot</para>
725          <indexterm zone="ch-cross-tools-glibc libmcheck">
726            <primary sortas="c-libmcheck">libmcheck</primary>
727          </indexterm>
728        </listitem>
729      </varlistentry>
730
731      <varlistentry id="libmemusage">
732        <term><filename class="libraryfile">libmemusage</filename></term>
733        <listitem>
734          <para>Used by <command>memusage</command> to help collect
735          information about the memory usage of a program</para>
736          <indexterm zone="ch-cross-tools-glibc libmemusage">
737            <primary sortas="c-libmemusage">libmemusage</primary>
738          </indexterm>
739        </listitem>
740      </varlistentry>
741
742      <varlistentry id="libnsl">
743        <term><filename class="libraryfile">libnsl</filename></term>
744        <listitem>
745          <para>The network services library</para>
746          <indexterm zone="ch-cross-tools-glibc libnsl">
747            <primary sortas="c-libnsl">libnsl</primary>
748          </indexterm>
749        </listitem>
750      </varlistentry>
751
752      <varlistentry id="libnss">
753        <term><filename class="libraryfile">libnss</filename></term>
754        <listitem>
755          <para>The Name Service Switch libraries, containing functions for
756          resolving host names, user names, group names, aliases, services,
757          protocols, etc.</para>
758          <indexterm zone="ch-cross-tools-glibc libnss">
759            <primary sortas="c-libnss">libnss</primary>
760          </indexterm>
761        </listitem>
762      </varlistentry>
763
764      <varlistentry id="libpcprofile">
765        <term><filename class="libraryfile">libpcprofile</filename></term>
766        <listitem>
767          <para>Contains profiling functions used to track the amount of CPU
768          time spent in specific source code lines</para>
769          <indexterm zone="ch-cross-tools-glibc libpcprofile">
770            <primary sortas="c-libpcprofile">libpcprofile</primary>
771          </indexterm>
772        </listitem>
773      </varlistentry>
774
775      <varlistentry id="libpthread">
776        <term><filename class="libraryfile">libpthread</filename></term>
777        <listitem>
778          <para>The POSIX threads library</para>
779          <indexterm zone="ch-cross-tools-glibc libpthread">
780            <primary sortas="c-libpthread">libpthread</primary>
781          </indexterm>
782        </listitem>
783      </varlistentry>
784
785      <varlistentry id="libresolv">
786        <term><filename class="libraryfile">libresolv</filename></term>
787        <listitem>
788          <para>Contains functions for creating, sending, and interpreting
789          packets to the Internet domain name servers</para>
790          <indexterm zone="ch-cross-tools-glibc libresolv">
791            <primary sortas="c-libresolv">libresolv</primary>
792          </indexterm>
793        </listitem>
794      </varlistentry>
795
796      <varlistentry id="librpcsvc">
797        <term><filename class="libraryfile">librpcsvc</filename></term>
798        <listitem>
799          <para>Contains functions providing miscellaneous RPC services</para>
800          <indexterm zone="ch-cross-tools-glibc librpcsvc">
801            <primary sortas="c-librpcsvc">librpcsvc</primary>
802          </indexterm>
803        </listitem>
804      </varlistentry>
805
806      <varlistentry id="librt">
807        <term><filename class="libraryfile">librt</filename></term>
808        <listitem>
809          <para>Contains functions providing most of the interfaces specified by
810          the POSIX.1b Realtime Extension</para>
811          <indexterm zone="ch-cross-tools-glibc librt">
812            <primary sortas="c-librt">librt</primary>
813          </indexterm>
814        </listitem>
815      </varlistentry>
816
817      <varlistentry id="libthread_db">
818        <term><filename class="libraryfile">libthread_db</filename></term>
819        <listitem>
820          <para>Contains functions useful for
821          building debuggers for multi-threaded programs</para>
822          <indexterm zone="ch-cross-tools-glibc libthread_db">
823            <primary sortas="c-libthread_db">libthread_db</primary>
824          </indexterm>
825        </listitem>
826      </varlistentry>
827
828      <varlistentry id="libutil">
829        <term><filename class="libraryfile">libutil</filename></term>
830        <listitem>
831          <para>Contains code for <quote>standard</quote> functions used in
832          many different Unix utilities</para>
833          <indexterm zone="ch-cross-tools-glibc libutil">
834            <primary sortas="c-libutil">libutil</primary>
835          </indexterm>
836        </listitem>
837      </varlistentry>
838
839    </variablelist>
840
841  </sect2>
842
843</sect1>
Note: See TracBrowser for help on using the repository browser.