GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat moduly Perl ručně a pomocí příkazu CPAN

Instalace modulů Perl vyžadovaných různými open source software je rutinní úkol pro systémové správce. Ruční instalace modulů Perl vyřešením všech závislostí je  zdlouhavý a otravný proces.

Instalace modulů Perl pomocí CPAN je lepší řešení, protože řeší všechny závislosti automaticky. V tomto článku se podíváme na to, jak nainstalovat moduly Perl na Linux pomocí ruční metody i metody CPAN.


Pokud není nainstalován modul Perl, aplikace zobrazí následující chybovou zprávu. V tomto příkladu chybí modul 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 .)

Nainstalujte moduly Perl ručně

Stáhněte si modul Perl

Přejděte na web CPAN Search a vyhledejte modul, který si přejete stáhnout. V tomto příkladu pojďme vyhledat, stáhnout a nainstalovat modul XML::Parser Perl. Stáhl jsem si XML-Parser-2.36.tar.gz do /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

Sestavte modul 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

Nainstalujte modul perl

# make install

To je velmi jednoduché pro jeden modul bez závislostí. Typicky budou moduly Perlu závislé na několika dalších modulech. Honit všechny tyto závislosti jeden po druhém může být velmi bolestivý a nepříjemný úkol. Doporučuji způsob instalace CPAN, jak je uvedeno níže. Ruční metodu použijte pouze v případě, že server není připojen k Internetu.

Automatická instalace modulů Perl pomocí CPAN

Ověřte, zda je již nainstalována síť CPAN

Chcete-li nainstalovat moduly Perl pomocí CPAN, ujistěte se, že příkaz cpan funguje. Měli byste mít nainstalovaný modul CPAN perl, než budete moci instalovat jakékoli jiné moduly Perl pomocí CPAN. V tomto příkladu není modul CPAN nainstalován.

# 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.

Nainstalujte modul CPAN pomocí příkazu yum

# yum install perl-CPAN

Výstup příkazu 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!

Nakonfigurujte cpan poprvé

Při prvním spuštění cpan byste měli nastavit některé konfigurační parametry, jak je uvedeno níže. Níže jsem ukázal pouze důležité konfigurační parametry. Přijměte všechny výchozí hodnoty stisknutím klávesy enter.

Poznámka: Ujistěte se, že jste provedli „o conf commit ” ve výzvě cpan po konfiguraci pro uložení nastavení.

# 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.

Nainstalujte moduly Perl pomocí CPAN

K instalaci modulu Perl pomocí cpan můžete použít jednu z následujících metod.

# /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";

Výstup výše uvedeného příkazu perl install:

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

Ve výše uvedeném příkladu závisí Email::Reply na několika dalších modulech. CPAN automaticky řeší závislosti a nainstaluje Email::Reply a všechny závislé moduly Perl.

Pokud se vám tento článek líbil, přidejte si jej do záložek na del.icio.us a Zakopnout .


Linux
  1. Raspberry Pi Firewall:Jak jej nainstalovat a spravovat pomocí UFW

  2. Jak nainstalovat moduly Perl na Linux

  3. Jak nainstalovat a používat příkaz Ping v Linuxu

  1. Jak nainstalovat WordPress ručně pomocí cPanel

  2. Jak nainstalovat dig na CentOS 7 a 8

  3. Jak zkontrolovat OS a verzi pomocí příkazu Linux

  1. Jak nainstalovat moduly Perl na sdílené servery

  2. Jak nainstalovat a používat SSHFS na Linuxu

  3. Jak nainstalovat a používat locate Command v Linuxu