Установка модулей Perl
Оглавление
Как быстро установить модуль, используя CPAN.pm
Установка модулей значительно облегчается и ускоряется при использовании модуля CPAN.pm, который специально предназначен для работы с каталогом модулей CPAN. Модуль позволяет автоматически скачать соответствующий пакет и все пакеты от которого он зависит из интернета, кэширует все скачаные данные, проверяет наличие последних версий и т. д.
Чтобы установить какой-либо модуль, в командной строке Unix необходимо просто написать:
perl -MCPAN -e 'install <module-name>'
На самом деле, в этой строчке нет ничего магического. Она означает то же самое, что и простейший Perl-скрипт use CPAN; install('<module-name>')
, а функция install
просто экспортируется модулем CPAN.pm.
Например, для установки всех модулей, необходимых Bugzill-е, нужно просто написать:
perl -MCPAN -e 'install Bundle::Bugzilla'
Система сама проверит все зависимости между модулями, установит новые версии и запросит у вас необходимые конфигурационные параметры.
В Windows работает тот же прием, однако нужно предварительно установить и правильно сконфигурировать Microsoft Visual Studio (прописать переменные окружения), чтобы работали утилита nmake и компилятор C++ (если он требуется модулю).
Менеджер пакетов ActivePerl
Дополнительно в ActivePerl имеется свой собственный менеджер пакетов. Он называется ppm и запускается командой path-to-perl\bin\ppm.bat
. При запуске вываливается командная строка, в которой можно вводить, например, такие инструкции:
ppm> install Имя::Модуля ppm> remove Имя::Модуля ppm> help ...и т.д.
Модули устанавливаются из бинарных дистрибутивов с сайта ActivePerl (по запросу они скачиваются через Интернет, так что удобнее всего будет к нему подключиться перед запуском ppm).
Мнеджеры пакетов в дистрибутивах *nix
Практически все дистрибутивы используют ту или иную систему управления установленными пакетами и зависимостями. Перл модули так же подпадают под управление этими системами. В использовании системы управления пакетами есть свои плюсы и минусы.
TODO: плюсы и минусы расписать
Gentoo
В Gentoo используется оригинальная система управления пакетами - portage. Модули перл попадают в репозиторий по мере необходимости, как и другое програмное обеспечение. Можно конечно использовать CPAN.pm, когда модуль, который вам нужен, не входит в этот список, но есть и другое решение - утилита app-portage/g-cpan
. Утилита генерирует ebuild'ы для модулей, которые вы устанавливаете, и позволяет управлять ими как другими пакетами, входящими в portage.
Устанавливаем утилиту:
shell> emerge g-cpan
Устанавливаем модуль:
shell> g-cpan --install Some::Cool::Module
Подробности в man g-cpan
Комментарии
Использование perl -MCPAN -e 'install ...' может неожиданно привести к переустановке всего Перла. В связи с тем, что этот мир не идеален, я предпочитаю устанавливать всё помодульно и отслеживать зависимости самостоятельно. Конечно, требуется гораздо больше времени, но зато есть уверенность, что ничего не поломаешь из уже работающего на сервере.
Андрей Новиков[досье] (2005-01-20 13:40:39)