[f45b1953] | 1 | <chapter id="general-genlib">
|
---|
| 2 | <?dbhtml filename="genlib.html" dir="general"?>
|
---|
| 3 | <title>General Libraries</title>
|
---|
| 4 |
|
---|
| 5 | <para>Libraries contain code which is often required by more than
|
---|
| 6 | one program. This has the advantage that each program doesn't need to
|
---|
| 7 | duplicate code (and risk introducing bugs), it just has to call
|
---|
| 8 | functions from the libraries installed on the system. The most obvious
|
---|
| 9 | example of a set of libraries is glibc which is installed during the LFS
|
---|
| 10 | book. This contains all of the C library functions which programs
|
---|
| 11 | use.</para>
|
---|
| 12 |
|
---|
| 13 | <para>There are two types of library, static and shared. Shared
|
---|
[8a0cee4] | 14 | libraries (usually <filename>libXXX.so</filename>) are loaded into memory from the shared
|
---|
| 15 | copy at runtime (hence the name). Static libraries
|
---|
| 16 | (<filename>libXXX.a</filename>) are
|
---|
[f45b1953] | 17 | actually linked into the program executable file itself, thus making the
|
---|
| 18 | program file larger. Quite often, you will find both static and shared
|
---|
| 19 | copies of the same library on your system.</para>
|
---|
| 20 |
|
---|
| 21 | <para>Generally, you only need to install libraries when you are
|
---|
| 22 | installing software which requires functionality which they supply. In
|
---|
| 23 | the BLFS book, each package is listed with a list of (known)
|
---|
| 24 | dependencies. Thus, you can figure out which libraries you need to have
|
---|
| 25 | before installing that program. If you are installing something without
|
---|
| 26 | using BLFS instructions, usually the <filename>README</filename> or
|
---|
| 27 | <filename>INSTALL</filename> file will contain details of the programs
|
---|
| 28 | requirements.</para>
|
---|
| 29 |
|
---|
| 30 | <para>There are certain libraries which nearly
|
---|
| 31 | <emphasis>everyone</emphasis> will need at some point. In this chapter
|
---|
| 32 | we list these and some others and explain why you may want to install
|
---|
| 33 | them.</para>
|
---|
| 34 |
|
---|
| 35 | &openssl;
|
---|
| 36 | &pcre;
|
---|
| 37 | &popt;
|
---|
| 38 | &slang;
|
---|
| 39 | &libfam;
|
---|
| 40 | &libxml;
|
---|
| 41 | &libxml2;
|
---|
| 42 | &libxslt;
|
---|
[6cab80b] | 43 | &readline;
|
---|
[777e407] | 44 | &gmp;
|
---|
| 45 | &gdbm;
|
---|
[16a0b717] | 46 | &GLib;
|
---|
| 47 | &GLib2;
|
---|
[6cab80b] | 48 | &expat;
|
---|
[fd2ade27] | 49 | &libesmtp;
|
---|
[368512b3] | 50 | &aspell;
|
---|
[20e6fc82] | 51 | &guile;
|
---|
[b866b9f7] | 52 | &slib;
|
---|
[f6230ab] | 53 | &gwrap;
|
---|
[2df89a3] | 54 | &STLport;
|
---|
[ef0e45e4] | 55 | &LZO;
|
---|
[f45b1953] | 56 | </chapter>
|
---|