Cómo identificar las dependencias de un paquete o archivo binario

Identificar las dependencias de un paquete (DEB o RPM) o un archivo binario de Linux siempre puede resultar útil a la hora de evitar errores al instalar aplicaciones o herramientas nuevas.

Paquetes DEB

Repositorios

En caso de que el paquete se encuentre en los repositorios del sistema:

apt-cache depends PAQUETE

También podés hacerlo desde Synaptic. Buscá el paquete, hacé clic derecho > Propiedades > Dependencias.

Para ver el árbol de dependencias completo (incluyendo las dependencias de las dependencias del paquete), instalá apt-rdepends. Para ver cómo funciona, te recomiendo leer este otro post.

DEB sueltos

Para ver las dependencias de un paquete DEB descargado de internet:

dpkg-deb -I mipaquete.deb

Donde mipaquete.deb es el nombre del paquete.

Nota: para conocer las dependencias de los paquetes DEB, también podés acceder a las bases de datos de los repositorios de tu distro favorita. En el caso de Ubuntu, te recomiendo acceder a la Ubuntu Package Database. Para Debian, está la Debian Package Database. Allí se listan los paquetes disponibles y sus dependencias.

Paquetes RPM

Repositorios

En el mundo RPM, la cosa es bien sencilla. Si el paquete se encuentra en los repositorios:

rpm -qR PAQUETE

RPM suelto

Si se trata de un paquete RPM suelto:

rpm -qpR PAQUETE

Nota: para conocer las dependencias de los paquetes RPM, también podés acceder a las bases de datos de los repositorios de tu distro favorita. En el caso de Fedora, te recomiendo acceder a la Fedora Package Database. Allí se listan los paquetes disponibles y sus dependencias.

Archivos binarios

Para descubrir las librerías utilizadas por un archivo binario en Linux, basta con escribir:

ldd archivo_binario

Donde archivo_binario es el nombre completo (incluida la ruta) del binario en cuestión.

En caso de que esas bibliotecas, a su vez, posean dependencias y quieras ver cuáles son, escribí:

ldd -v archivo_binario

¡Gracias Rosgore por recomendarnos el tema!


4 comentarios

  1.   ivan80 dijo

    disculpen una pregunta, lo que pasa es que necesito un controlador para una impresora xerox workcentre 5020, ya lo baje de xerox pero tiene unas dependencias, el detalle esta que esas depencias estan en mi sistema debian pero ya actualizadas, intente instalar ese paquete pero me pide mas depencias de ese paquete y si instalo las otras esas otras me piden otras dependencias y se vuelve una eternidad de dependencias que puede hacer, espero me puedan ayudar, de antemano gracias.

  2.   Gaius Baltar dijo

    ¿Has probado con el comando ‘apt-get build-dep nombre-paquete? No sé si requiere que este esté disponible en los repos, pero por probar…

  3.   Adrián dijo

    He leído varios tutoriales sobre como instalar programas compilando, y es la primera vez que me entero de este truco. Con lo útil que es.
    Gracias por compartirlo.

  4.   Marcoshipe dijo

    yo tambien es la primera vez que veo esto para los binarios, aunque generalmente al leer los readme’s te dicen. lo voy a empezar a implementar a ver que onda. gracias por el dato!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *