fbpx Certificação Linux: Comando ldconfig no Linux (índice de bibliotecas) [Guia Básico]

Blog

Comando ldconfig no Linux (índice de bibliotecas) [Guia Básico]

📅 01/01/2019 ⏱ 3 min ✍️ Uira Ribeiro
Linuxcomandos
Comando ldconfig no Linux (índice de bibliotecas) [Guia Básico]

O Comando ldconfig no Linux cria os links e refaz o índice das bibliotecas dinâmicas do arquivo /etc/ld.so.cache. Ele procura por bibliotecas nos diretórios /usr/lib e /lib, assim como nos diretórios listados em /etc/ld.so.conf, bem como o diretório informado na linha de comando.

As opções mais comuns são:

  • -p: Lista o conteúdo do cache /etc/ld.so.cache.
  • -v: Mostra o progresso da atualização do cache.
  • -f: arquivo informa um outro arquivo de configuração diferente do padrão /etc/ld.so.conf.

Exemplos:

# ldconfig –p
229 libs found in cache ‘/etc/ld.so.cache’
src_vipa.so (ELF) => /usr/lib/src_vipa.so
libz.so.1 (libc6) => /lib/libz.so.1
libz.so.1 (libc6) => /usr/lib/libz.so.1
liby2util.so.3 (libc6) => /usr/lib/liby2util.so.3
liby2pm.so.2 (libc6) => /usr/lib/liby2pm.so.2
liby2.so.2 (libc6) => /usr/lib/liby2.so.2
libyui.so.2 (libc6) => /usr/lib/libyui.so.2
libycp.so.2 (libc6) => /usr/lib/libycp.so.2
# ldconfig –v
/usr/X11R6/lib:
libSM.so.6 -> libSM.so.6.0
libdps.so.1 -> libdps.so.1.0
libXrender.so.1 -> libXrender.so.1.2
(…)

LD_LIBRARY_PATH

Ainda é possível fornecer ao linker em tempo de execução ld.so uma lista de diretórios extras que podem conter bibliotecas compartilhadas através da variável ambiental LD_LIBRARY_PATH.

Uma lista de diretórios poderá ser configurada, separando-os por dois pontos “:”. Esta lista antecede a lista do arquivo ls.so.conf.

# set | grep LD_LIBRARY_PATH
LD_LIBRARY_PATH=/usr/lib

Por razões de segurança, a variável LD_LIBRARY_PATH é ignorada pelo ld.so quando este faz ligações de programas que possuem o bit SUID ou SGID habilitados.

Seu uso é comum para testar novas rotinas em bibliotecas em desenvolvimento ao invés de executar as rotinas já instaladas.

Toda vez que uma nova biblioteca for instalada, ou versão de biblioteca, é necessário atualizar o cache do linker ld.so com o comando ldconfig.

Raramente você precisará utilizar os comandos ldd e ldconfig se você instalar software no Linux utilizando um gerenciador de pacotes, pois os gerenciadores também instalam as dependencias de um software, de forma que as bibliotecas que o software necessita também são instaladas e o arquivo ld.so.cache é refeito no momento da instalação dos pacotes.

Mas se você baixar um software em código fonte, e for compilar este software, pode ter certeza que possivelmente irá esbarrar em um erro de falta de bibliotecas ou versão incorreta.

A lista de bibliotecas utilizadas por um programa pode ser obtida com o comando ldd.

Aprenda muito mais sobre Linux em nosso curso online. Você pode efetuar a matrícula aqui. Se você já tem uma conta, ou quer criar uma, basta entrar ou criar seu usuário aqui.

Gostou? Compartilhe

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Especialista Linux com mais de 20 anos de experiência.
Autor de 5 livros e mentor de mais de 14.000 alunos certificados.
20 certificações de alto nível, incluindo LPIC-3, CKA, RHCE e AWS Solutions Architect.

WhatsApp