Встановлення модулів Perl в Debian

Коли мені потрібен якийсь модуль Perl, я спочатку перевіряю його наявність у пакунках – http://www.debian.org/distrib/packages#search_contents

Це дуже просто, достатньо знати якого файлу не вистачає. Наприклад, ми отримали таке повідомлення про помилку:

Can't locate LWP/UserAgent.pm in @INC ...

Воно означає, що потрібен модуль LWP::UserAgent, але насправді це файл UserAgent.pm у каталозі LWP. Тому шукаємо саме так, як вказано у повідомленні про помилку: LWP/UserAgent.pm (режим “paths ending with the keyword”).

Пошук повертає 3 пакунки:

/usr/share/perl/5.10.1/CPAN/LWP/UserAgent.pm perl-modules
/usr/share/perl5/LWP/UserAgent.pm libwww-perl
/usr/share/perl5/Test/Mock/LWP/UserAgent.pm libtest-mock-lwp-perl

Нам потрібен libwww-perl, бо пакунок, що у назві містить test призначений для тестування, а perl-modules – це щось зовсім загальне.

Та іноді буває, що модуль Perl не дуже поширений і тому не потрапляє до пакунку у дистрибутиві Лінукс. У таких випадках слід встановлювати його зі CPAN – http://www.cpan.org/

На CPAN можна знайти майже будь-який модуль, скачати його і встановити вручну, але це довго. Простіше запустити утиліту cpan і встановити через неї.

Наприклад, Perl сценарій видав таку помилку:

Can't locate Geography/Countries.pm in @INC ...
Compilation failed in require at ...

Запускаємо cpan і по назві файлу Geography/Countries.pm ми вже знаємо ім’я пакету – Geography::Countries.

# cpan
Terminal does not support AddHistory.

cpan shell -- CPAN exploration and modules installation (v1.9402)
Enter 'h' for help.

cpan[2]> install Geography::Countries 
Running install for module 'Geography::Countries'
CPAN: Data::Dumper loaded ok (v2.124)
...

І через декілька секунд модуль все успішно встановлений.

Напишіть відгук