Hola,
un problema con el que tropecé recientemente al preparar un fichero .travis.yaml para un repositorio en GitHub es que algunos módulos Perl pueden fallar al ser instalados porque dependen de software adicional que no está instalado en el sistema operativo. La solución pasa por instalar esas dependencias antes de los módulos en cuestión, tal como se hace por ejemplo con libgd-dev en https://github.com/eead-csic-compbio/get_homologues/blob/master/.travis.yml
En esta entrada lo que quería compartir es el módulo CPAN-Plugin-Sysdeps, que sirve precisamente para averiguar qué dependencias del sistema tiene cualquier módulo. Un ejemplo vale más que mil palabras:
# instalamos cpan-sysdeps cpanm CPAN::Plugin::Sysdeps --> Working on CPAN::Plugin::Sysdeps Fetching http://www.cpan.org/authors/id/S/SR/SREZIC/CPAN-Plugin-Sysdeps-0.68.tar.gz ... OK Configuring CPAN-Plugin-Sysdeps-0.68 ... OK Building and testing CPAN-Plugin-Sysdeps-0.68 ... OK Successfully installed CPAN-Plugin-Sysdeps-0.68 1 distribution installed # ahora comprobamos las dependencias de cualquier módulo cpan-sysdeps --cpanmod DB_File libdb5.3-dev # si quieres ver solamente las que faltan por instalar cpan-sysdeps --cpanmod DB_File --uninstalled # finalmente, puedes instalar directamente esas dependencias apt-get install $(cpan-sysdeps --uninstalled --cpanmod DB_File)
Hasta pronto,
Bruno