GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar módulos Perl manualmente y usando el comando CPAN

La instalación de módulos Perl requeridos por varios software de código abierto es una tarea rutinaria para los administradores de sistemas. Instalar módulos de Perl manualmente resolver todas las dependencias es un proceso tedioso y molesto.

Instalación de módulos Perl mediante CPAN es una mejor solución, ya que resuelve todas las dependencias automáticamente. En este artículo, repasemos cómo instalar módulos Perl en Linux usando el método manual y CPAN.


Cuando un módulo Perl no está instalado, la aplicación mostrará el siguiente mensaje de error. En este ejemplo, falta el módulo XML::Parser Perl.

Can't locate XML/parser.pm in @INC (@INC contains:
/usr/lib/perl5/5.10.0/i386-linux-thread-multi
/usr/lib/perl5/5.10.0
/usr/local/lib/perl5/site_perl/5.10.0/i386-linux-thread-multi
/usr/local/lib/perl5/site_perl/5.10.0
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl
/usr/lib/perl5/site_perl/5.10.0 .)

Instalar módulos de Perl manualmente

Descargar módulo Perl

Vaya al sitio web de búsqueda de CPAN y busque el módulo que desea descargar. En este ejemplo, busquemos, descarguemos e instalemos el módulo XML::Parser Perl. He descargado XML-Parser-2.36.tar.gz en /home/download

# cd /home/download
# gzip -d XML-Parser-2.36.tar.gz
# tar xvf XML-Parser-2.36.tar
# cd XML-Parser-2.36

Construir el módulo perl

# perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for XML::Parser::Expat
Writing Makefile for XML::Parser
# make
# make test

Instalar el módulo perl

# make install

Esto es muy simple para un módulo sin dependencias. Por lo general, los módulos de Perl dependerán de varios otros módulos. Perseguir todas estas dependencias una por una puede ser una tarea muy dolorosa y molesta. Recomiendo el método de instalación CPAN como se muestra a continuación. Use el método manual solo si el servidor no está conectado a Internet.

Instalar módulos Perl usando CPAN automáticamente

Verificar si CPAN ya está instalado

Para instalar módulos Perl usando CPAN, asegúrese de que el comando cpan esté funcionando. Debe tener instalado el módulo Perl de CPAN antes de poder instalar cualquier otro módulo Perl mediante CPAN. En este ejemplo, el módulo CPAN no está instalado.

# cpan
-bash: cpan: command not found

# perl -MCPAN -e shell
Can't locate CPAN.pm in @INC (@INC contains:
/usr/lib/perl5/5.10.0/i386-linux-thread-multi
/usr/lib/perl5/5.10.0
/usr/local/lib/perl5/site_perl/5.10.0/i386-linux-thread-multi
/usr/local/lib/perl5/site_perl/5.10.0
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.10.0
/usr/lib/perl5/vendor_perl /usr/lib/perl5/site_perl/5.10.0 .).
BEGIN failed--compilation aborted.

Instalar el módulo CPAN usando yum

# yum install perl-CPAN

Salida del comando yum install perl-CPAN:

Loaded plugins: refresh-packagekit
updates-newkey                       | 2.3 kB     00:00
primary.sqlite.bz2                   | 2.4 MB     00:00
Setting up Install Process
Parsing package install arguments

Resolving Dependencies
Transaction Summary
=============================================================================
Install      5 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

Total download size: 1.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): perl-ExtUtils-ParseXS-2.18-31.fc9.i386.rpm     |  30 kB     00:00
(2/5): perl-Test-Harness-2.64-31.fc9.i386.rpm         |  70 kB     00:00
(3/5): perl-CPAN-1.9205-31.fc9.i386.rpm               | 217 kB     00:00
(4/5): perl-ExtUtils-MakeMaker-6.36-31.fc9.i386.rpm   | 284 kB     00:00
(5/5): perl-devel-5.10.0-31.fc9.i386.rpm              | 408 kB     00:00

Installing     : perl-ExtUtils-ParseXS                             [1/5]
Installing     : perl-devel                                        [2/5]
Installing     : perl-Test-Harness                                 [3/5]
Installing     : perl-ExtUtils-MakeMaker                           [4/5]
Installing     : perl-CPAN                                         [5/5]


Installed: perl-CPAN.i386 0:1.9205-31.fc9
Dependency Installed:
  perl-ExtUtils-MakeMaker.i386 0:6.36-31.fc9
  perl-ExtUtils-ParseXS.i386 1:2.18-31.fc9
  perl-Test-Harness.i386 0:2.64-31.fc9
  perl-devel.i386 4:5.10.0-31.fc9
Complete!

Configurar cpan la primera vez

La primera vez que ejecute cpan, debe establecer algunos parámetros de configuración como se muestra a continuación. He mostrado solo los parámetros de configuración importantes a continuación. Acepte todos los valores predeterminados presionando enter.

Nota: Asegúrese de ejecutar “o conf commit ” en el indicador de cpan después de la configuración para guardar la configuración.

# cpan

Sorry, we have to rerun the configuration dialog for CPAN.pm due
to some missing parameters...

CPAN build and cache directory? [/root/.cpan]
Download target directory? [/root/.cpan/sources]
Directory where the build process takes place? [/root/.cpan/build]

Always commit changes to config variables to disk? [no]
Cache size for build directory (in MB)? [100]
Let the index expire after how many days? [1]

Perform cache scanning (atstart or never)? [atstart]
Cache metadata (yes/no)? [yes]
Policy on building prerequisites (follow, ask or ignore)? [ask]

Parameters for the 'perl Makefile.PL' command? []
Parameters for the 'perl Build.PL' command? []

Your ftp_proxy? []
Your http_proxy? []
Your no_proxy? []
Is it OK to try to connect to the Internet? [yes]

First, pick a nearby continent and country by typing in the number(s)
(1) Africa
(2) Asia
(3) Central America
(4) Europe
(5) North America
(6) Oceania
(7) South America
Select your continent (or several nearby continents) [] 5

(1) Bahamas
(2) Canada
(3) Mexico
(4) United States
Select your country (or several nearby countries) [] 4

(2) ftp://carroll.cac.psu.edu/pub/CPAN/
(3) ftp://cpan-du.viaverio.com/pub/CPAN/
(4) ftp://cpan-sj.viaverio.com/pub/CPAN/
(5) ftp://cpan.calvin.edu/pub/CPAN
(6) ftp://cpan.cs.utah.edu/pub/CPAN/
e.g. '1 4 5' or '7 1-4 8' [] 2-16

cpan[1]> o conf commit
commit: wrote '/usr/lib/perl5/5.10.0/CPAN/Config.pm'

cpan[2]> quit
No history written (no histfile specified).
Lockfile removed.

Instalar módulos de Perl mediante CPAN

Puede usar uno de los siguientes métodos para instalar un módulo Perl usando cpan.

# /usr/bin/perl -MCPAN -e 'install Email::Reply'

(or)

# cpan
cpan shell -- CPAN exploration and modules installation (v1.9205)
ReadLine support available (maybe install Bundle::CPAN or Bundle::CPANxxl?)

cpan[1]> install "Email::Reply";

Salida del comando de instalación de Perl anterior:

CPAN: Storable loaded ok (v2.18)
Going to read /root/.cpan/Metadata
Database was generated on Mon, 15 Sep 2008 11:02:52 GMT

Running install for module 'Email::Reply'
Running make for R/RJ/RJBS/Email-Reply-1.202.tar.gz
CPAN: LWP::UserAgent loaded ok (v2.036)
CPAN: Time::HiRes loaded ok (v1.9711)
Fetching with LWP:
ftp://carroll.cac.psu.edu/pub/CPAN/authors/id/R/RJ/RJBS/Email-Reply-1.202.tar.gz

CPAN: checksum security checks disabled because Digest::SHA not installed.
Please consider installing the Digest::SHA module.

CPAN: Compress::Zlib loaded ok (v2.008)
Email-Reply-1.202/
Email-Reply-1.202/Changes
CPAN: File::Temp loaded ok (v0.18)
Warning: prerequisite Email::Abstract 2.01 not found.
Warning: prerequisite Email::MIME::Creator 1.41 not found.
Writing Makefile for Email::Reply
---- Unsatisfied dependencies detected during ----
----       RJBS/Email-Reply-1.202.tar.gz      ----
Email::Abstract [requires]
Email::MIME::Creator [requires]
Shall I follow them and prepend them to the queue

of modules we are processing right now? [yes]
[Note: CPAN automatically detects that Email::Abstract
       and Email::MIME::Creator is required]

Fetching with LWP:
ftp://server/pub/CPAN/authors/id/R/RJ/RJBS/Email-Abstract-2.134.tar.gz
make -- OK
make install  -- OK

Fetching with LWP:
ftp://server/pub/CPAN/authors/id/R/RJ/RJBS/Email-MIME-Creator-1.454.tar.gz
make -- OK
make install  -- OK

Warning: prerequisite Email::Simple::Creator 1.4 not found.
Writing Makefile for Email::MIME::Creator
Email::Simple::Creator [requires]
Shall I follow them and prepend them to the queue
of modules we are processing right now? [yes]
[Note: CPAN automatically detects that Simple::Creator is required]

Fetching with LWP:
ftp://carroll.cac.psu.edu/pub/CPAN/authors/id/R/RJ/RJBS/Simple-Creator.tar.gz
make -- OK
make install  -- OK

Fetching with LWP:
CPAN.pm: Going to build R/RJ/RJBS/Email-Reply-1.202.tar.gz

make -- OK
make install  -- OK

En el ejemplo anterior, Email::Reply depende de varios otros módulos. CPAN resuelve automáticamente las dependencias e instala Email::Reply y todos los módulos Perl dependientes.

Si le gustó este artículo, márquelo como favorito en del.icio.us y tropezar .


Linux
  1. Cómo instalar WordPress manualmente usando cPanel

  2. Firewall Raspberry Pi:cómo instalarlo y administrarlo mediante UFW

  3. Cómo instalar módulos Perl en Linux

  4. Cómo instalar y usar el comando ping en Linux

  5. Cómo verificar el sistema operativo y la versión usando un comando de Linux

Cómo instalar módulos Perl usando CPAN en CentOS 8

Cómo instalar módulos Perl usando CPAN en CentOS 8

¿Cómo instalar módulos Perl usando cPanel?

Cómo instalar y usar Podman (alternativa de Docker)

Cómo instalar y configurar Git en Ubuntu 20.04

Cómo instalar y usar Snapd en Debian 11