•
Compilar y empaquetar para Debian/Ubuntu
Al bajar el código fuente de algunos paquetes podemos ver que dispone de los ficheros para crear los paquetes para diferentes distribuciones ya preparados:
# ls autogen.sh CONTRIBUTE.md doxygen.am get-version libevent Makefile.am osx redhat tests configure.ac debian doxygen.cfg include m4 NEWS README.md src
En este caso vamos a ver cómo crear el paquete para Debian.
La herramienta que deberemos usar es dpkg-buildpackage:
# dpkg-buildpackage
Deberemos ejecutarla desde la raiz del programa a empaquetar y que dispongamos del código fuente en el directorio anterior con el nombre .orig:
dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../lldpd_0.7.6.orig.tar.{bz2,gz,lzma,xz}
Una vez acabe de compilar, en el directorio anterior encontraremos los paquetes:
-rw-r--r-- 1 root staff 290804 Nov 4 18:56 lldpd_0.7.6.orig.tar.gz -rw-r--r-- 1 root staff 7051 Nov 4 19:25 lldpd_0.7.6-0.debian.tar.gz -rw-r--r-- 1 root staff 966 Nov 4 19:25 lldpd_0.7.6-0.dsc drwxrwxr-x 10 root root 4096 Nov 4 19:40 lldpd-0.7.6 -rw-r--r-- 1 root staff 138202 Nov 4 19:41 lldpd_0.7.6-0_armhf.deb -rw-r--r-- 1 root staff 47902 Nov 4 19:41 liblldpctl-dev_0.7.6-0_armhf.deb -rw-r--r-- 1 root staff 1782 Nov 4 19:41 lldpd_0.7.6-0_armhf.changes
Podremos proceder a instalarlo mediante dpkg y la opción -i:
# dpkg -i lldpd_0.7.6-0_armhf.deb (Reading database ... 77817 files and directories currently installed.) Preparing to replace lldpd 0.5.7-2 (using lldpd_0.7.6-0_armhf.deb) ... Unpacking replacement lldpd ... Setting up lldpd (0.7.6-0) ... Installing new version of config file /etc/init.d/lldpd ... [ ok ] Starting LLDP daemon: lldpd. Processing triggers for man-db ...
Al crear el paquete deberemos dejarlo on hold para evitar que se actualice con los de la distribución:
# aptitude hold lldpd
Mediante aptitude show podemos ver el estado del paquete:
# aptitude show lldpd Package: lldpd State: installed [held] Automatically installed: no Version: 0.7.6-0 Priority: optional Section: net (...)
Deja un comentario: