gentoo linux, java, software libre y otras hierbas
Sep, 22 2008 - 12:01 am

Verificar y satisfacer dependencias usando apt-rdepends y apt-get build-dep en Debian o Ubuntu

Primero hablemos de apt-rdepends, un programa que nos permite verificar las dependencias de un paquete de manera recursiva, es decir, no solamente muestra las dependencias inmediatas de un paquete, sino que nos muestra un árbol de dependencias (que incluye las dependencias de las dependencias).

Esto es bastante útil cuando necesitemos compilar un paquete desde sus fuentes, y queramos saber qué otros paquetes son necesarios para que la construcción del programa sea satisfactoria.

Para instalar apt-rdepends basta con ejecutar el comando:

debian:~# apt-get install apt-rdepends

Suponiendo que deseamos ver las dependencias del paquete libapache2-mod-php5, usamos el comando:

debian:~# apt-rdepends libapache2-mod-php5
Reading package lists… Done
Building dependency tree… Done
libapache2-mod-php5
Depends: apache2-mpm-itk
Depends: apache2-mpm-prefork (>> 2.0.52)
Depends: apache2.2-common
Depends: libbz2-1.0
Depends: libc6 (>= 2.3.6-6)
Depends: libcomerr2 (>= 1.33-3)
Depends: libdb4.4
Depends: libkrb53 (>= 1.4.2)
Depends: libmagic1
Depends: libpcre3 (>= 4.5)
Depends: libssl0.9.8 (>= 0.9.8c-1)
Depends: libxml2 (>= 2.6.27)
Depends: mime-support (>= 2.03-1)
Depends: php5-common (= 5.2.0-8+etch1)
Depends: ucf
Depends: zlib1g (>= 1:1.2.1)
apache2-mpm-itk
Depends: apache2.2-common (= 2.2.3-4+etch5)
Depends: libapr1
Depends: libaprutil1
Depends: libc6 (>= 2.3.6-6)
Lo corto aquí porque la salida es bastante larga…

Ahora supongamos que deseamos compilar un programa cualquiera pero con nuestras propias reglas. Me explico: cuando instalamos software desde los repositorios, éste viene ya compilado y listo para ejecutar en nuestra plataforma; por tanto, quien compiló el paquete habilitó las opciones que considera normales para el uso del programa. Pero si necesitaramos que el programa tenga las opciones que NOSOTROS QUERAMOS entonces debemos compilarlo nosotros mismos, y es en este punto en donde apt-rdepends y apt-get build-dep pueden ayudarnos.

Como ya expliqué el uso de apt-rdepends, vamos entonces con apt-get build-dep: éste comando instala desde los repositorios todas las dependencias del programa que deseamos compilar, pero no instala el programa. Por ejemplo: si quisiera compilar el ettercap con mis propias reglas, podría intentar instalar al menos las dependencias de dicho programa así:

debian:~# apt-get build-dep ettercap

El comando anterior NO instalará ettercap sino sus dependencias. Ahora ya podemos compilarlo a nuestro gusto desde el código fuente, que bien podemos descargar manualmente o con el comando:

debian:~# apt-get source ettercap

Esto nos ahorra tiempo puesto que el archivo configure ya no nos molestará con mensajes de error de dependencias.

Sin duda bastante útil!

11 Comentarios | deja el tuyo

4 enlaces entrantes

7 Comentarios en “Verificar y satisfacer dependencias usando apt-rdepends y apt-get build-dep en Debian o Ubuntu”

  1. psylard dice:

    Interesante artículo, por cierto felicidades por el blog, lo leo desde hace poco y la verdad es que me gusta bastante

  2. Cristian dice:

    Pues muchas gracias por comentar… he añadido tu blog en mi lector de feeds para no perder contacto.

    Un saludo!

  3. jeyson dice:

    hey man super interesante tu articulo me va a ser de gran ayuda para esas dependencias que tantas canas me han sacado.
    Gracias

  4. Max Villegas dice:

    Gracias por el dato, me sirvió mucho para hacer unos manuales en los que necesitaba saber las dependencias de unos programas.

  5. luis dice:

    Pues buena la info, pero ahora ando en busca de compilar el ettercap en ubuntu 8.10 con las librerias ssl, y simplemente no puedo si alguien sabe como compilarlo completo …. se lo agradeceria

  6. Loloto dice:

    gracias , muy util esta aplicacion

  7. Luis dice:

    ok intentaremos, como nos explicas…
    Gracias Don Diablo… a ver si jala (tiene que jalar)

¡Déjanos tu comentario!