GNU/Linux >> Tutoriales Linux >  >> Linux

¿"cuál" equivalente para bibliotecas compartidas?

Estoy buscando una utilidad que se comporte de la misma manera que which , sino para buscar bibliotecas compartidas (*.so) en los directorios definidos en $LD_LIBRARY_PATH?

Respuesta aceptada:

Si tiene un ejecutable y quiere ver dónde está recogiendo bibliotecas, ejecute

ldd /path/to/executable

Esto tendrá en cuenta las bibliotecas en la ruta de búsqueda predeterminada, así como las bibliotecas en la ruta de acceso de este ejecutable, si las hay.

En Linux, las rutas a las bibliotecas del sistema se almacenan en caché para mayor eficiencia. /sbin/ldconfig -p muestra el contenido del caché (está almacenado en /etc/ld.so.cache ). Aquí hay una secuencia de comandos que muestra la(s) ubicación(es) de una biblioteca:

#!/bin/sh
if [ -n "$LD_LIBRARY_PATH" ]; then
  set -f
  IFS=:
  for d in $LD_LIBRARY_PATH; do
    if [ -e "$d/$1" ]; then echo "$1"; fi
  done
fi
/sbin/ldconfig -p |
awk -v needle="$1" '$1 == needle {sub(/.* => /, ""); print}'

Linux
  1. Error al cargar bibliotecas compartidas libcrypto.so.1.1 – OpenSSL [Fijar]

  2. Introducción a las bibliotecas compartidas de Linux (Cómo crear bibliotecas compartidas)

  3. Depende.exe para GNU/Linux

  4. ¿Para qué sirve la opción 'soname' para crear bibliotecas compartidas?

  5. Irfanview equivalente más cercano para Linux

Detecte bibliotecas compartidas obsoletas en la memoria con UChecker

Cómo enumerar las bibliotecas compartidas utilizadas por los ejecutables en Linux

comprobando bibliotecas compartidas para cargadores no predeterminados

error al cargar bibliotecas compartidas:libncurses.so.5:

Equivalente/Alternativas para Alt+Punto en Mac

¿Cuál es un equivalente moderno para fumar?