Changeset 3f0c882 for chapter06/glibc.xml
- Timestamp:
- 12/21/2004 07:38:32 PM (19 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.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, 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:
- 3d36131c
- Parents:
- aaa3260
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter06/glibc.xml
raaa3260 r3f0c882 11 11 12 12 <sect2 role="package"><title/> 13 <para>The Glibc package contains the main C library. This library provides all14 the basic routines for allocating memory, searching directories, opening and15 closing files, reading and writing them, string handling, pattern matching,16 arithmetic, and so on.</para>17 13 18 14 <segmentedlist> … … 22 18 </segmentedlist> 23 19 24 <segmentedlist>25 <segtitle>Glibc installation depends on</segtitle>26 <seglistitem><seg>Bash, Binutils, Coreutils, Diffutils,27 Gawk, GCC, Gettext, Grep, Make, Perl, Sed, Texinfo</seg></seglistitem>28 </segmentedlist>29 20 </sect2> 30 21 … … 32 23 <title>Installation of Glibc</title> 33 24 34 <para>The Glibc build system is very well self-contained and will install 35 perfectly, even though our compiler specs file and linker are still pointing 36 at <filename class="directory">/tools</filename>. We cannot adjust the specs and linker before 37 the Glibc install, because the Glibc autoconf tests would then give bogus 38 results and thus defeat our goal of achieving a clean build.</para> 39 40 <para>Before starting to build Glibc, remember to unset any environment 41 variables that override the default optimization flags.</para> 42 43 <para>The Glibc documentation recommends building Glibc outside of the source 44 directory in a dedicated build directory:</para> 25 <para>Create a build directory:</para> 45 26 46 27 <screen><userinput>mkdir ../glibc-build … … 54 35 --libexecdir=/usr/lib/glibc</userinput></screen> 55 36 56 <para>The meaning of the new configure options:</para>57 58 <variablelist>59 <varlistentry>60 <term><parameter>--libexecdir=/usr/lib/glibc</parameter></term>61 <listitem><para>This changes the location of the <command>pt_chown</command>62 program from its default of <filename class="directory">/usr/libexec</filename> to63 <filename class="directory">/usr/lib/glibc</filename>.</para></listitem>64 </varlistentry>65 </variablelist>66 67 37 <para>Compile the package:</para> 68 38 69 39 <screen><userinput>make</userinput></screen> 70 71 <important><para>The test suite for Glibc in this section is considered72 <emphasis>critical</emphasis>. Our advice is to not skip it under any73 circumstance.</para></important>74 40 75 41 <para>Test the results:</para> … … 78 44 79 45 <para>The Glibc test suite is highly dependent on certain functions of your host 80 system, in particular the kernel. In general, the Glibc test suite is always 81 expected to pass. However, in certain circumstances some failures are 82 unavoidable. Here is a list of the most common issues we are aware of:</para> 46 system. See testing for explanations.</para> 83 47 84 <itemizedlist> 85 <listitem><para>The <emphasis>math</emphasis> tests sometimes fail when running 86 on systems where the CPU is not a relatively new genuine Intel or authentic AMD. 87 Certain optimization settings are also known to be a factor here.</para></listitem> 88 89 <listitem><para>The <emphasis>gettext</emphasis> test sometimes fails due to 90 host system issues. The exact reasons are not yet clear.</para></listitem> 91 92 <listitem><para>The <emphasis>atime</emphasis> test sometimes fails when the 93 LFS partition is mounted with the <parameter>noatime</parameter> option, or due 94 to other file system quirks.</para></listitem> 95 96 <listitem><para>The <emphasis>shm</emphasis> test might fail when the host 97 system is running the devfs file system but doesn't have the <systemitem class="filesystem">tmpfs</systemitem> file system 98 mounted at <filename class="directory">/dev/shm</filename> due to lack of support for tmpfs in 99 the kernel.</para></listitem> 100 101 <listitem><para>When running on older and slower hardware, some tests might 102 fail due to test timeouts being exceeded.</para></listitem> 103 </itemizedlist> 104 105 <para>Though it is a harmless message, the install stage of Glibc will 106 complain about the absence of <filename>/etc/ld.so.conf</filename>. Fix this 107 annoying little warning with:</para> 48 <para>Fix an annoying little warning with:</para> 108 49 109 50 <screen><userinput>touch /etc/ld.so.conf</userinput></screen> … … 113 54 <screen><userinput>make install</userinput></screen> 114 55 115 <para>T he locales that can make your system respond in a different language116 weren't installed by the above command. Do it with this:</para>56 <para>To install the Glibc locales, use the following 57 command:</para> 117 58 118 59 <screen><userinput>make localedata/install-locales</userinput></screen> 119 60 120 61 <para>An alternative to running the previous command is to install only those 121 locales which you need or want. This can be achieved by using the 122 <command>localedef</command> command. Information on this can be found in 123 the <filename>INSTALL</filename> file in the Glibc source. However, there are 124 a number of locales that are essential for the tests of future packages to 125 pass, in particular, the <emphasis>libstdc++</emphasis> tests from GCC. The 126 following instructions, instead of the install-locales target above, will 127 install the minimum set of locales necessary for the tests to run 128 successfully:</para> 62 locales which you need or want. The following instructions, instead of the 63 install-locales target above, will install the minimum set of locales necessary 64 for the tests to run successfully:</para> 129 65 130 <screen><userinput>mkdir -p / usr/lib/locale66 <screen><userinput>mkdir -p /tools/lib/locale 131 67 localedef -i de_DE -f ISO-8859-1 de_DE 132 68 localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro … … 141 77 localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen> 142 78 143 <para>In fact, some locales installed by the 144 <command>make localedata/install-locales</command> 145 command above are not properly 146 supported by some applications that are in LFS and BLFS books. Because 147 of various problems that arise 148 due to application programmers making 149 assumptions that break in such locales, LFS <emphasis>should not</emphasis> 150 be used in locales that utilize 151 multibyte character sets (including UTF-8) or 152 right-to-left writing order. 153 Numerous unofficial and unstable patches are required to fix these problems, 154 and it has been decided not to support such complex locales. 155 This applies to the ja_JP and fa_IR locales as well: 156 they have been installed only 157 for GCC and Gettext tests to pass, and e.g. 158 the <command>watch</command> program (part of Procps) 159 compiled according to this book doesn't work properly in them. 160 Various attempts to circumvent these 161 restrictions are documented in internationalization-related hints.</para> 162 163 <para>Finally, build the linuxthreads man pages, which are a great reference 164 on the threading API (applicable to NPTL as well):</para> 79 <para>Build the linuxthreads man pages:</para> 165 80 166 81 <screen><userinput>make -C ../glibc-&glibc-version;/linuxthreads/man</userinput></screen> … … 174 89 175 90 <sect2 id="conf-glibc" role="configuration"><title>Configuring Glibc</title> 176 <indexterm zone="conf-glibc"><primary sortas="e-/etc/nsswitch.conf">/etc/nsswitch.conf</primary></indexterm>177 <indexterm zone="conf-glibc"><primary sortas="e-/etc/localtime">/etc/localtime</primary></indexterm>178 179 <para>We need to create the <filename>/etc/nsswitch.conf</filename> file,180 because, although Glibc provides defaults when this file is missing or corrupt,181 the Glibc defaults don't work well with networking. Also, our time zone needs182 to be set up.</para>183 91 184 92 <para>Create a new file <filename>/etc/nsswitch.conf</filename> by running the … … 207 115 <screen><userinput>tzselect</userinput></screen> 208 116 209 <para>When you've answered a few questions about your location, the script will 210 output the name of your time zone, something like <emphasis>EST5EDT</emphasis> 211 or <emphasis>Canada/Eastern</emphasis>. Then create the 212 <filename>/etc/localtime</filename> file by running:</para> 117 <para>Then create the <filename>/etc/localtime</filename> file by running:</para> 213 118 214 <screen><userinput>cp --remove-destination /usr/share/zoneinfo/Canada/Eastern /etc/localtime</userinput></screen> 215 216 <para>The meaning of the option:</para> 217 218 <variablelist> 219 <varlistentry> 220 <term><parameter>--remove-destination</parameter></term> 221 <listitem><para>This is needed to force removal of the already existing symbolic 222 link. The reason why we copy instead of symlink is to cover the situation where 223 <filename class="directory">/usr</filename> is on a separate partition. This could matter, for 224 example, when booted into single user mode.</para></listitem> 225 </varlistentry> 226 </variablelist> 227 228 <para>Of course, instead of <emphasis>Canada/Eastern</emphasis>, fill in 229 the name of the time zone that the <command>tzselect</command> script 230 gave you.</para> 119 <screen><userinput>cp --remove-destination /usr/share/zoneinfo/<replaceable>[xxx]</replaceable> \ 120 /etc/localtime</userinput></screen> 231 121 232 122 </sect2> … … 235 125 <sect2 id="conf-ld" role="configuration"> 236 126 <title>Configuring Dynamic Loader</title> 237 <indexterm zone="conf-ld"><primary sortas="e-/etc/ld.so.conf">/etc/ld.so.conf</primary></indexterm>238 239 <para>By default, the dynamic loader240 (<filename class="libraryfile">/lib/ld-linux.so.2</filename>) searches through <filename241 class="directory">/lib</filename> and <filename class="directory">/usr/lib</filename>242 for dynamic libraries that are needed243 by programs when you run them. However, if there are libraries in244 directories other than <filename class="directory">/lib</filename> and245 <filename class="directory">/usr/lib</filename>, you need to add them to246 the <filename>/etc/ld.so.conf</filename> file for the dynamic247 loader to find them. Two directories that are commonly known to contain248 additional libraries are <filename class="directory">/usr/local/lib</filename>249 and <filename class="directory">/opt/lib</filename>, so we add those directories to the250 dynamic loader's search path.</para>251 127 252 128 <para>Create a new file <filename>/etc/ld.so.conf</filename> by running the … … 267 143 <sect2 id="contents-glibc" role="content"><title>Contents of Glibc</title> 268 144 269 <segmentedlist> 270 <segtitle>Installed programs</segtitle> 271 <segtitle>Installed libraries</segtitle> 272 <seglistitem><seg>catchsegv, gencat, getconf, 273 getent, glibcbug, iconv, iconvconfig, ldconfig, ldd, lddlibc4, locale, 274 localedef, mtrace, nscd, nscd_nischeck, pcprofiledump, pt_chown, rpcgen, 275 rpcinfo, sln, sprof, tzselect, xtrace, zdump and zic</seg> 276 <seg>ld.so, libBrokenLocale.[a,so], 277 libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so], libc_nonshared.a, 278 libcrypt.[a,so], libdl.[a,so], libg.a, libieee.a, libm.[a,so], libmcheck.a, 279 libmemusage.so, libnsl.a, libnss_compat.so, libnss_dns.so, libnss_files.so, 280 libnss_hesiod.so, libnss_nis.so, libnss_nisplus.so, libpcprofile.so, 281 libpthread.[a,so], libresolv.[a,so], librpcsvc.a, librt.[a,so], libthread_db.so 282 and libutil.[a,so]</seg></seglistitem> 283 </segmentedlist> 284 285 <variablelist><title>Short descriptions</title> 286 287 <varlistentry id="catchsegv"> 288 <term><command>catchsegv</command></term> 289 <listitem> 290 <indexterm zone="ch-system-glibc catchsegv"><primary sortas="b-catchsegv">catchsegv</primary></indexterm> 291 <para>can be used to create a stack trace 292 when a program terminates with a segmentation fault.</para> 293 </listitem> 294 </varlistentry> 295 296 <varlistentry id="gencat"> 297 <term><command>gencat</command></term> 298 <listitem> 299 <indexterm zone="ch-system-glibc gencat"><primary sortas="b-gencat">gencat</primary></indexterm> 300 <para>generates message catalogues.</para> 301 </listitem> 302 </varlistentry> 303 304 <varlistentry id="getconf"> 305 <term><command>getconf</command></term> 306 <listitem> 307 <indexterm zone="ch-system-glibc getconf"><primary sortas="b-getconf">getconf</primary></indexterm> 308 <para>displays the system configuration values for file system specific variables.</para> 309 </listitem> 310 </varlistentry> 311 312 <varlistentry id="getent"> 313 <term><command>getent</command></term> 314 <listitem> 315 <indexterm zone="ch-system-glibc getent"><primary sortas="b-getent">getent</primary></indexterm> 316 <para>gets entries from an administrative database.</para> 317 </listitem> 318 </varlistentry> 319 320 <varlistentry id="glibcbug"> 321 <term><command>glibcbug</command></term> 322 <listitem> 323 <indexterm zone="ch-system-glibc glibcbug"><primary sortas="b-glibcbug">glibcbug</primary></indexterm> 324 <para>creates a bug report and mails it to the bug email address.</para> 325 </listitem> 326 </varlistentry> 327 328 <varlistentry id="iconv"> 329 <term><command>iconv</command></term> 330 <listitem> 331 <indexterm zone="ch-system-glibc iconv"><primary sortas="b-iconv">iconv</primary></indexterm> 332 <para>performs character set conversion.</para> 333 </listitem> 334 </varlistentry> 335 336 <varlistentry id="iconvconfig"> 337 <term><command>iconvconfig</command></term> 338 <listitem> 339 <indexterm zone="ch-system-glibc iconvconfig"><primary sortas="b-iconvconfig">iconvconfig</primary></indexterm> 340 <para>creates fastloading <command>iconv</command> module configuration file.</para> 341 </listitem> 342 </varlistentry> 343 344 <varlistentry id="ldconfig"> 345 <term><command>ldconfig</command></term> 346 <listitem> 347 <indexterm zone="ch-system-glibc ldconfig"><primary sortas="b-ldconfig">ldconfig</primary></indexterm> 348 <para>configures the dynamic linker runtime bindings.</para> 349 </listitem> 350 </varlistentry> 351 352 <varlistentry id="ldd"> 353 <term><command>ldd</command></term> 354 <listitem> 355 <indexterm zone="ch-system-glibc ldd"><primary sortas="b-ldd">ldd</primary></indexterm> 356 <para>reports which shared libraries are required 357 by each given program or shared library.</para> 358 </listitem> 359 </varlistentry> 360 361 <varlistentry id="lddlibc4"> 362 <term><command>lddlibc4</command></term> 363 <listitem> 364 <indexterm zone="ch-system-glibc lddlibc4"><primary sortas="b-lddlibc4">lddlibc4</primary></indexterm> 365 <para>assists <command>ldd</command> with object files.</para> 366 </listitem> 367 </varlistentry> 368 369 <varlistentry id="locale"> 370 <term><command>locale</command></term> 371 <listitem> 372 <indexterm zone="ch-system-glibc locale"><primary sortas="b-locale">locale</primary></indexterm> 373 <para>is a Perl program that tells the compiler 374 to enable or disable the use of POSIX locales for built-in operations.</para> 375 </listitem> 376 </varlistentry> 377 378 <varlistentry id="localedef"> 379 <term><command>localedef</command></term> 380 <listitem> 381 <indexterm zone="ch-system-glibc localedef"><primary sortas="b-localedef">localedef</primary></indexterm> 382 <para>compiles locale specifications.</para> 383 </listitem> 384 </varlistentry> 385 386 <varlistentry id="mtrace"> 387 <term><command>mtrace</command></term> 388 <listitem> 389 <indexterm zone="ch-system-glibc mtrace"><primary sortas="b-mtrace">mtrace</primary></indexterm> 390 <para>...</para> 391 </listitem> 392 </varlistentry> 393 394 <varlistentry id="nscd"> 395 <term><command>nscd</command></term> 396 <listitem> 397 <indexterm zone="ch-system-glibc nscd"><primary sortas="b-nscd">nscd</primary></indexterm> 398 <para>is a name service cache daemon providing a 399 cache for the most common name service requests.</para> 400 </listitem> 401 </varlistentry> 402 403 <varlistentry id="nscd_nischeck"> 404 <term><command>nscd_nischeck</command></term> 405 <listitem> 406 <indexterm zone="ch-system-glibc nscd_nischeck"><primary sortas="b-nscd_nischeck">nscd_nischeck</primary></indexterm> 407 <para>checks whether or not secure mode is necessary for NIS+ lookup.</para> 408 </listitem> 409 </varlistentry> 410 411 <varlistentry id="pcprofiledump"> 412 <term><command>pcprofiledump</command></term> 413 <listitem> 414 <indexterm zone="ch-system-glibc pcprofiledump"><primary sortas="b-pcprofiledump">pcprofiledump</primary></indexterm> 415 <para>dumps information generated by PC profiling.</para> 416 </listitem> 417 </varlistentry> 418 419 <varlistentry id="pt_chown"> 420 <term><command>pt_chown</command></term> 421 <listitem> 422 <indexterm zone="ch-system-glibc pt_chown"><primary sortas="b-pt_chown">pt_chown</primary></indexterm> 423 <para>is a helper program for grantpt to set 424 the owner, group and access permissions of a slave pseudo terminal.</para> 425 </listitem> 426 </varlistentry> 427 428 <varlistentry id="rpcgen"> 429 <term><command>rpcgen</command></term> 430 <listitem> 431 <indexterm zone="ch-system-glibc rpcgen"><primary sortas="b-rpcgen">rpcgen</primary></indexterm> 432 <para>generates C code to implement the RPC protocol.</para> 433 </listitem> 434 </varlistentry> 435 436 <varlistentry id="rpcinfo"> 437 <term><command>rpcinfo</command></term> 438 <listitem> 439 <indexterm zone="ch-system-glibc rpcinfo"><primary sortas="b-rpcinfo">rpcinfo</primary></indexterm> 440 <para>makes an RPC call to an RPC server.</para> 441 </listitem> 442 </varlistentry> 443 444 <varlistentry id="sln"> 445 <term><command>sln</command></term> 446 <listitem> 447 <indexterm zone="ch-system-glibc sln"><primary sortas="b-sln">sln</primary></indexterm> 448 <para>is used to make symbolic links. The program 449 is statically linked, so it is useful for making symbolic links to dynamic 450 libraries if the dynamic linking system for some reason is nonfunctional.</para> 451 </listitem> 452 </varlistentry> 453 454 <varlistentry id="sprof"> 455 <term><command>sprof</command></term> 456 <listitem> 457 <indexterm zone="ch-system-glibc sprof"><primary sortas="b-sprof">sprof</primary></indexterm> 458 <para>reads and displays shared object profiling data.</para> 459 </listitem> 460 </varlistentry> 461 462 <varlistentry id="tzselect"> 463 <term><command>tzselect</command></term> 464 <listitem> 465 <indexterm zone="ch-system-glibc tzselect"><primary sortas="b-tzselect">tzselect</primary></indexterm> 466 <para>asks the user about the location of the 467 system and reports the corresponding time zone description.</para> 468 </listitem> 469 </varlistentry> 470 471 <varlistentry id="xtrace"> 472 <term><command>xtrace</command></term> 473 <listitem> 474 <indexterm zone="ch-system-glibc xtrace"><primary sortas="b-xtrace">xtrace</primary></indexterm> 475 <para>traces the execution of a program by 476 printing the currently executed function.</para> 477 </listitem> 478 </varlistentry> 479 480 <varlistentry id="zdump"> 481 <term><command>zdump</command></term> 482 <listitem> 483 <indexterm zone="ch-system-glibc zdump"><primary sortas="b-zdump">zdump</primary></indexterm> 484 <para>is the time zone dumper.</para> 485 </listitem> 486 </varlistentry> 487 488 <varlistentry id="zic"> 489 <term><command>zic</command></term> 490 <listitem> 491 <indexterm zone="ch-system-glibc zic"><primary sortas="b-zic">zic</primary></indexterm> 492 <para>is the time zone compiler.</para> 493 </listitem> 494 </varlistentry> 495 496 <varlistentry id="ld.so"> 497 <term><filename class="libraryfile">ld.so</filename></term> 498 <listitem> 499 <indexterm zone="ch-system-glibc ld.so"><primary sortas="c-ld.so">ld.so</primary></indexterm> 500 <para>is the helper program for shared library executables.</para> 501 </listitem> 502 </varlistentry> 503 504 <varlistentry id="libBrokenLocale"> 505 <term><filename class="libraryfile">libBrokenLocale</filename></term> 506 <listitem> 507 <indexterm zone="ch-system-glibc libBrokenLocale"><primary sortas="c-libBrokenLocale">libBrokenLocale</primary></indexterm> 508 <para>is used by programs, such as Mozilla, to solve broken locales.</para> 509 </listitem> 510 </varlistentry> 511 512 <varlistentry id="libSegFault"> 513 <term><filename class="libraryfile">libSegFault</filename></term> 514 <listitem> 515 <indexterm zone="ch-system-glibc libSegFault"><primary sortas="c-libSegFault">libSegFault</primary></indexterm> 516 <para>is a segmentation fault signal handler. It tries to catch segfaults.</para> 517 </listitem> 518 </varlistentry> 519 520 <varlistentry id="libanl"> 521 <term><filename class="libraryfile">libanl</filename></term> 522 <listitem> 523 <indexterm zone="ch-system-glibc libanl"><primary sortas="c-libanl">libanl</primary></indexterm> 524 <para>is an asynchronous name lookup library.</para> 525 </listitem> 526 </varlistentry> 527 528 <varlistentry id="libbsd-compat"> 529 <term><filename class="libraryfile">libbsd-compat</filename></term> 530 <listitem> 531 <indexterm zone="ch-system-glibc libbsd-compat"><primary sortas="c-libbsd-compat">libbsd-compat</primary></indexterm> 532 <para>provides the portability needed 533 in order to run certain BSD programs under Linux.</para> 534 </listitem> 535 </varlistentry> 536 537 <varlistentry id="libc"> 538 <term><filename class="libraryfile">libc</filename></term> 539 <listitem> 540 <indexterm zone="ch-system-glibc libc"><primary sortas="c-libc">libc</primary></indexterm> 541 <para>is the main C library -- a collection of commonly used functions.</para> 542 </listitem> 543 </varlistentry> 544 545 <varlistentry id="libcrypt"> 546 <term><filename class="libraryfile">libcrypt</filename></term> 547 <listitem> 548 <indexterm zone="ch-system-glibc libcrypt"><primary sortas="c-libcrypt">libcrypt</primary></indexterm> 549 <para>is the cryptography library.</para> 550 </listitem> 551 </varlistentry> 552 553 <varlistentry id="libdl"> 554 <term><filename class="libraryfile">libdl</filename></term> 555 <listitem> 556 <indexterm zone="ch-system-glibc libdl"><primary sortas="c-libdl">libdl</primary></indexterm> 557 <para>is the dynamic linking interface library.</para> 558 </listitem> 559 </varlistentry> 560 561 <varlistentry id="libg"> 562 <term><filename class="libraryfile">libg</filename></term> 563 <listitem> 564 <indexterm zone="ch-system-glibc libg"><primary sortas="c-libg">libg</primary></indexterm> 565 <para>is a runtime library for <command>g++</command>.</para> 566 </listitem> 567 </varlistentry> 568 569 <varlistentry id="libieee"> 570 <term><filename class="libraryfile">libieee</filename></term> 571 <listitem> 572 <indexterm zone="ch-system-glibc libieee"><primary sortas="c-libieee">libieee</primary></indexterm> 573 <para>is the IEEE floating point library.</para> 574 </listitem> 575 </varlistentry> 576 577 <varlistentry id="libm"> 578 <term><filename class="libraryfile">libm</filename></term> 579 <listitem> 580 <indexterm zone="ch-system-glibc libm"><primary sortas="c-libm">libm</primary></indexterm> 581 <para>is the mathematical library.</para> 582 </listitem> 583 </varlistentry> 584 585 <varlistentry id="libmcheck"> 586 <term><filename class="libraryfile">libmcheck</filename></term> 587 <listitem> 588 <indexterm zone="ch-system-glibc libmcheck"><primary sortas="c-libmcheck">libmcheck</primary></indexterm> 589 <para>contains code run at boot.</para> 590 </listitem> 591 </varlistentry> 592 593 <varlistentry id="libmemusage"> 594 <term><filename class="libraryfile">libmemusage</filename></term> 595 <listitem> 596 <indexterm zone="ch-system-glibc libmemusage"><primary sortas="c-libmemusage">libmemusage</primary></indexterm> 597 <para>is used by <command>memusage</command> to help collect 598 information about the memory usage of a program.</para> 599 </listitem> 600 </varlistentry> 601 602 <varlistentry id="libnsl"> 603 <term><filename class="libraryfile">libnsl</filename></term> 604 <listitem> 605 <indexterm zone="ch-system-glibc libnsl"><primary sortas="c-libnsl">libnsl</primary></indexterm> 606 <para>is the network services library.</para> 607 </listitem> 608 </varlistentry> 609 610 <varlistentry id="libnss"> 611 <term><filename class="libraryfile">libnss*</filename></term> 612 <listitem> 613 <indexterm zone="ch-system-glibc libnss"><primary sortas="c-libnss*">libnss*</primary></indexterm> 614 <para>are the Name Service Switch libraries, 615 containing functions for resolving host names, user names, group names, 616 aliases, services, protocols, and the like.</para> 617 </listitem> 618 </varlistentry> 619 620 <varlistentry id="libpcprofile"> 621 <term><filename class="libraryfile">libpcprofile</filename></term> 622 <listitem> 623 <indexterm zone="ch-system-glibc libpcprofile"><primary sortas="c-libpcprofile">libpcprofile</primary></indexterm> 624 <para>contains profiling functions used 625 to track the amount of CPU time spent in which source code lines.</para> 626 </listitem> 627 </varlistentry> 628 629 <varlistentry id="libpthread"> 630 <term><filename class="libraryfile">libpthread</filename></term> 631 <listitem> 632 <indexterm zone="ch-system-glibc libpthread"><primary sortas="c-libpthread">libpthread</primary></indexterm> 633 <para>is the POSIX threads library.</para> 634 </listitem> 635 </varlistentry> 636 637 <varlistentry id="libresolv"> 638 <term><filename class="libraryfile">libresolv</filename></term> 639 <listitem> 640 <indexterm zone="ch-system-glibc libresolv"><primary sortas="c-libresolv">libresolv</primary></indexterm> 641 <para>contains functions for creating, 642 sending, and interpreting packets to the Internet domain name servers.</para> 643 </listitem> 644 </varlistentry> 645 646 <varlistentry id="librpcsvc"> 647 <term><filename class="libraryfile">librpcsvc</filename></term> 648 <listitem> 649 <indexterm zone="ch-system-glibc librpcsvc"><primary sortas="c-librpcsvc">librpcsvc</primary></indexterm> 650 <para>contains functions providing miscellaneous RPC services.</para> 651 </listitem> 652 </varlistentry> 653 654 <varlistentry id="librt"> 655 <term><filename class="libraryfile">librt</filename></term> 656 <listitem> 657 <indexterm zone="ch-system-glibc librt"><primary sortas="c-librt">librt</primary></indexterm> 658 <para>contains functions providing most of the 659 interfaces specified by the POSIX.1b Realtime Extension.</para> 660 </listitem> 661 </varlistentry> 662 663 <varlistentry id="libthread_db"> 664 <term><filename class="libraryfile">libthread_db</filename></term> 665 <listitem> 666 <indexterm zone="ch-system-glibc libthread_db"><primary sortas="c-libthread_db">libthread_db</primary></indexterm> 667 <para>contains functions useful for 668 building debuggers for multi-threaded programs.</para> 669 </listitem> 670 </varlistentry> 671 672 <varlistentry id="libutil"> 673 <term><filename class="libraryfile">libutil</filename></term> 674 <listitem> 675 <indexterm zone="ch-system-glibc libutil"><primary sortas="c-libutil">libutil</primary></indexterm> 676 <para>contains code for <quote>standard</quote> functions used in many different Unix utilities.</para> 677 </listitem> 678 </varlistentry> 679 </variablelist> 145 <para>See testing</para> 680 146 681 147 </sect2>
Note:
See TracChangeset
for help on using the changeset viewer.