viernes, 9 de mayo de 2008

Compilar paquetes "al vuelo"

Creo recordar una entrada en este blog con apt-build.Una aplicación muy útil,que compila "automáticamente" el paquete para la arquitectura y características de tu máquina.Esta mañana, en www.debian.org, he visto una reseña a algunas características de apt-get,frecuentemente olvidadas.Entre ellas la opción source, que básicamente descarga los fuentes y luego los compila.Veamos un ejemplo.Antes de nada comentar que en /etc/apt/sources.list debemos tener una entrada para el repositorio de fuentes, como podemos ver en el ejemplo, la línea comienza por deb-src
[root@localhost] cat /etc/apt/sources.list
deb http://ftp.rediris.es/debian testing main contrib non-free
deb-src http://ftp.rediris.es/debian testing main contrib non-free
Ahora actualizamos los fuentes:
[root@localhost] apt-get update
Descargamos por ejemplo los fuentes de postfix,y con el parámetro -b, indicaremos a apt-get que también lo compile.
[root@localhost]apt-get -b source postfix
Es posible que para compilar el paquete, existan dependencias no resueltas, para ello:
[root@locahost]apt-get build-dep postfix
Ejecutamos de nuevo :
[root@locahost]apt-get -b source postfix
Esperamos unos minutillos,depende de la máquina.Las pruebas las he hecho en un DELL Optiplex GX520, con un Pentium Dual Core 2,8 Ghz y 2 GB RAM 533, y en 3 minutos, tema resuelto.
Hacemos un ls -l en el directorio actual:
[root@localhost]ls -l
total 5720
drwxr-xr-x 19 root root 4096 may 9 09:12 postfix-2.5.2~rc2
-rw-r--r-- 1 root root 218123 abr 14 18:47 postfix_2.5.2~rc2-1.diff.gz
-rw-r--r-- 1 root root 1022 abr 14 18:47 postfix_2.5.2~rc2-1.dsc
-rw-r--r-- 1 root root 3658 may 9 09:13 postfix_2.5.2~rc2-1_i386.changes
-rw-r--r-- 1 root root 1159202 may 9 09:13 postfix_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 3154538 abr 14 18:47 postfix_2.5.2~rc2.orig.tar.gz
-rw-r--r-- 1 root root 39732 may 9 09:13 postfix-cdb_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 139600 may 9 09:13 postfix-dev_2.5.2~rc2-1_all.deb
-rw-r--r-- 1 root root 909570 may 9 09:13 postfix-doc_2.5.2~rc2-1_all.deb
-rw-r--r-- 1 root root 46910 may 9 09:13 postfix-ldap_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41734 may 9 09:13 postfix-mysql_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41516 may 9 09:13 postfix-pcre_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41798 may 9 09:13 postfix-pgsql_2.5.2~rc2-1_i386.deb
Instalamos el paquete:
[root@localhost]dpkg -i postfix_2.5.2~rc2-1_i386.deb

Fácil,pues ya sabeis, a compilar.

No hay comentarios: