CPAN установка модулей

Homepage: CPAN

CPAN (Comprehensive Perl Archive Network — «всеобъемлющая сеть архивов Perl») - архив документации и программного обеспечения, написанного на языке программирования perl.

  • Зайти в консоль CPAN
# cpan
OR
# perl -MCPAN -e shell
perl -MCPAN -e shell Ключ -Mмодуль означает то же, что use модуль, а ключ -e команды заставляет интерпретатор выполнить указанные команды Perl. Таким образом, приведенная выше командная строка делает то же, что и обыкновенный скрипт { use CPAN; shell; }
  • Установить модули
# cpan -i SOAP::Lite
# perl -MCPAN -e "install SOAP::Transport::HTTP2"

Существует несколько видов проблем, которые могут возникнуть при инсталляции модулей через CPAN. Попробую кратко их описать. Первая проблема касается неправильной настройки модуля CPAN.pm, которая происходит при первом запуске perl -MCPAN -e shell. Например, вы могли выбрать неправильный адрес зеркала CPAN (адрес сайта, с которого будут скачиваться модули) и не знаете, как его изменить.

Все настройки CPAN.pm хранит в файле модуля CPAN::Config, обычно расположенного в файле %PERL%/lib/CPAN/Config.pm (где %PERL% — это директория, в которую установлен Perl; в Денвере это /usr). Если вы работаете в Unix, путь может быть также ~/.cpan/CPAN/MyConfig.pm, т.е. файл располагается в домашнем каталоге пользователя. При первом запуске Config.pm (содержащий единственную строчку "1;") переименовывается в Config.pm~, а в исходный файл записывается конфигурация CPAN.

Следовательно, существует два способа принудительно изменить конфигурацию CPAN.pm. Во-первых, можно переименовать Config.pm~ назад в Config.pm (переписав поверх), тогда при следующем старте будут снова заданы все вопросы о настройке. Во-вторых, можно просто в текстовом редакторе поправить в файле нужные параметры.

В конфигурационном файле CPAN есть переменная ('build_dir'), отвечающая за расположение папки для временного хранения модулей перед установкой.

# cat /etc/perl/CPAN/Config.pm | grep build_dir
  'build_dir' => q[/home/darkfire/.cpan/build],
  'build_dir_reuse' => q[1],

Как можно понять, в этой папке хранятся инсталяционные файлы модулей, которые представляют из себя стандартный комплект – Makefile.PL / Build.pl и обычно уже созданный Makefile (т.к. данные модули уже были установлены Вами), который и устанавливает модуль в хранилище. А у данного Make файла присутствует цель uninstall, т.е. можно выполнить make uninstall и либо удалить модуль сразу, либо получить рекомендации для удаления.

Для установки модуль CPAN удобно использовать утилиту cpanm из пакета cpanminus. Она не требует настройки и готова к использованию сразу. Например нам нужно для Наcтройка, обучение, диагностика SpamAssassin в связке с Postfix установить недостающий модуль Digest::SHA1

# aptitude install cpanminus
# cpanm --sudo Digest::SHA1
PQ VPS сервера в 28+ странах.