As bibliotecas contém código que geralmente é exigido por mais que um aplicativo. Isso tem a vantagem de que cada aplicativo não precisa duplicar código (e arriscar-se a introduzir defeitos); apenas tem de chamar funções a partir das bibliotecas instaladas no sistema. O exemplo mais óbvio de um conjunto de bibliotecas é a Glibc que é instalado durante o livro LFS. Essa contém todas as funções da biblioteca C que os aplicativos usam.
Existem dois tipos de bibliotecas: estáticas e compartilhadas. As
bibliotecas compartilhadas (geralmente libXXX.so
) são carregadas na memória a partir da
cópia compartilhada em tempo de execução (daí o nome). As bibliotecas
estáticas (libXXX.a
) são na verdade
vinculadas ao próprio arquivo executável do aplicativo, dessa forma
tornando o arquivo do aplicativo maior. Muitas vezes, você encontrará
cópias estáticas e compartilhadas da mesma biblioteca em seu sistema.
Geralmente, você somente precisa instalar as bibliotecas quando
estiver instalando o software que precisa da funcionalidade que elas
fornecem. No livro BLFS, cada pacote é apresentado com uma lista de
dependências (conhecidas). Assim, você consegue descobrir quais
bibliotecas precisa ter antes de instalar esse aplicativo. Se você
estiver instalando algo sem usar as instruções do BLFS, geralmente o
arquivo README
ou o INSTALL
conterá detalhes dos requisitos do
aplicativo.
Existem certas bibliotecas que quase todos(as) precisarão em algum ponto. Neste capítulo, essas e algumas outras estão listadas e é explicado por que você possivelmente queira instalá-las.