modulos cpan de perl

26 de agosto de 2008

CPAN son las siglas de Comprehensive Perl Archive Network. Se trata de un enorme recolector de módulos para Perl que permiten extender las funcionalidades de este lenguaje.
Segun Perl hay más de 58.000 módulos disponibles para multitud de tareas como matemáticas, acceso a base de datos, creación de PDF, estadísticas, etc.
Cualquiera puede crear e instalar estos módulos Perl es su sistema Linux, para ello solo tiene que saber que módulos necesita. Si arrancamos un programa en Perl y nos peta porque nos falta un módulo de CPAN nos dirá cual nos falta. Algo como "te falta el modulo Proc::ProcessTable". Otra manera es abrir el archivo Perl y mirar que módulos carga.

Veriamos algo como:

#!/usr/bin/perl
use strict;
use warnings;
use POSIX;
use IO::Scalar;
use Proc::ProcessTable;
use File::Path;
use File::Rsync;
use Mail::Mailer;
...
En este caso este programa de Perl utiliza 8 módulos los cuales unos pueden estar instalados por defecto en nuestro sistema y otros no.

Aqui podeis buscar los modulos de Perl que necesiteis.

Para instalar un modulo CPAN lo mejor es entrar en el shell de Perl con el siguiente comando:
# perl –MCPAN –e shell
Si es la primera vez que ejecutáis el shell puede ser que os pida configurar ciertos parámetros del Perl. Memoria temporal, carpetas temporales, repositorios etc. Para quien no sepa que le pregunta dejar los valores que pone por defecto. Durante este Wizard habrá un apartado que os preguntará en que continente estais. Contestad el vuestro porque esto hará que Perl busque el repositorio CPAN más cercano. En mi caso seleccionaria Europa -> España y finalmente seleccionaría por ejemplo el repositio de RedIris.
Para buscar mirror podeis empezar por aquí.

Al finalizar el wizard os tiene que salir el prompt de cpan. Ahora solo os queda instalar el módulo. Si os falta el módulo Mail::Mailer tenéis que hacer:
Cpan> install Mail::Mailer
Si por algun motivo este modulo depende de otro, el proceso de install también instalará las dependencias entre modulo que se necesite (cosa muy probable).

Más información:
+ Otras maneras de instalar modulos.