Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 12. Программирование Вперед

Пакет Perl Modules

Знакомимся с пакетом Perl Modules

Пакет Perl modules добавляет полезные объекты в язык Perl. Ниже приведены модули со всеми их зависимостями, к которым обращаются пакеты, устанавливаемые в BLFS. Чтобы установить описываемые здесь модули, нужно сначала установить перечисленные зависимости (начиная с самой нижней и выше), а затем уже устанавливать нужный модуль. Большинство ссылок на модули Perl имеют вид Module (Модуль), Module::SubName (Модуль::Подимя) или Module::Sub::Name (Модуль:Подмодуль:Имя), хотя иногда вы увидите варианты Module (Модуль), Module-SubName (Модуль-Подимя) или Module-Sub-Name (Модуль-Подмодуль-Имя). Приведенные ниже ссылки на внешние URL, указаны во втором варианте обозначения, поскольку так официально называются пакеты.

Замечание

Некоторые зависимости, такие как модуль Test::Pod-1.4, используются несколькими из перечисленными зависимостями основного модуля и, возможно, устанавливаемым модулем. Для того, чтобы избежать дублирования и беспорядка в инструкциях, такие зависимости указываются в цепочке зависимостей каждого основного модуля только один раз (как правило, возле самой последней указываемой зависимости).

Archive::Zip-1.30

Модуль Archive::Zip позволяет программе на Perl создавать, манипулировать, читать и записывать архивные файлы Zip.

Date::Manip-5.54

Date::Manip является набором процедур, созданных для облегчения обычных операций с датами/временем. Становится проще выполнять такие операции, как сравнение двух значений времени, вычисление времени от одного заданного момента до другого или использовать международный формат отображения времени. С самого начала в модуле Date::Manip основное внимание уделялось простоте выполнения ЛЮБЫХ операций с датами и временем.

Finance::Quote-1.13

Модуль Finance::Quote используется для получения в сети интернет котировок акций из различных источников данных, в том числе из Yahoo! Finance, Fidelity Investments и из Australian Stock Exchange. Есть два способа использовать этот модуль - функциональный интерфейс, который уже устарел, и объектно-ориентированный метод, который обеспечивает большую гибкость и стабильность. За исключением непосредственных значений курсов валют, вся информация возвращается в виде двумерной хэш структуры (или ссылки на такую хэш структуру, если она вызывается в скалярном контексте).

После установки пакета наберите команду perldoc Finance::Quote для того, чтобы получить полную информацию. Либо вы можете просто распаковать архива с дистрибутивом, перейти в директорий верхнего уровня и набрать команду perldoc lib/Finance/Quote.pm. Модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Замечание

Чтобы запустить регрессионый набор тестов, вам необходимо иметь работающее соединение с интернетом, а затем после распаковки архива и перехода в корневой директорий дерева исходных кодов вам нужно будет с помощью следующей команды создать символическую ссылку на директорий test:

ln -s test t

В зависимости от конкретных условий некоторые тесты могут не пройти. Полную информацию смотрите в файле INSTALL.

Finance::QuoteHist-1.11

Сборка Finance::QuoteHist состоит из нескольких модулей, предназначенных для извлечения из интернета исторических данных о котировках акций. Модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

HTML::Parser-3.56

Дистрибутив HTML::Parser представляет собой набор модулей для разбора и извлечения информации из документов HTML. Модули, перечисленные ниже, устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

HTML::TableExtract-2.10

HTML::TableExtract является модулем, который облегчает извлечение содержимого из таблиц в документах HTML; извлеченная информация будет представлена в виде текста или в виде дерева со специальными элементами. С помощью параметров Headers (заголовки), Depth (глубина вложения), Count (счетчик), Attributes (атрибуты) или с помощью некоторой комбинации этих параметров можно задавать таблицы с заметками. Модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

libwww-perl-5.806 (a.k.a. LWP)

Коллекция libwww-perl (LWP) является набором модулей Perl, с помощью которого для World-Wide Web реализован простой и последовательный интерфейс прикладного программирования. Основное назначение библиотеки — предоставить классы и функции, которые позволят вам писать клиентские программы WWW. В библиотеке также есть модули более общего назначения, а также классы, которые помогут вам реализовать простые сервера HTTP. Коллекция LWP и все зависимости ее модулей Perl устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Module::Info-0.32

Модуль Module::Info предоставляет достаточно больше возможностей, чем просто поддержка работы других модулей. Его можно запускать из командной строки для того, чтобы узнать, есть ли тот или иной модуль и был ли он установлен при установке вашего варианта Perl. Вдобавок модуль Module::Info может сообщить, какая версия модуля установлена и какие зависимости необходимы для этого модуля. Вы даже можете использовать модуль Module::Info для того, чтобы узнать о зависимостях неустановленных модулей. Модуль Module::Info и зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Module::Signature-0.55

Модуль Module::Signature используется для проверки и создания файлов SIGNATURE для дистрибутивов CPAN. После установки модуля Module::Signature вы можете проверить содержимое архива с дистрибутивом (если в нем есть файл SIGNATURE) — для этого распакуйте архив, перейдите во вновь созданный директорий и выполните команду cpansign -v. Будет выполнена проверка целостности каждого файла, а также достоверности подписи. Обратите внимание, что для некоторых зависимостей, по всей видимости, имеется циклическая зависимость, но проблемы возникают только во время исполнения модуля; так что после того, как вы вы все установите, вы и сможете пользоваться всеми имеющимися возможностями. Module::Signature и зависимости модулей устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Net::DNS-0.57

Модуль Net::DNS является средством разрешения ссылок DNS, реализованном на Perl. Его можно использовать для выполнения практически любого типа запросов DNS из сценариев Perl. Модуль Net::DNS и его зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Pod::Coverage-0.21

Модуль Pod::Coverage является библиотекой Perl, используемой для проверки достаточности документации, имеющейся для модуля. Все зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

SGMLSpm-1.03ii

Модуль SGMLSpm является библиотекой Perl, используемая для анализа выходного потока парсеров SGMLS и NSGMLS Джеймса Кларка (James Clark's SGMLS и NSGMLS parsersr). Для установки этого модуля требуются видоизмененные инструкции по установке, которые приведены ниже.

Если версия Perl, установленная в вашей системе, отличается от 5.12.1, вам необходимо изменить команду sed, приведенную ниже, так, чтобы она соответствовала установленной у вас версии.

sed -i -e "s@/usr/local/bin@/usr/bin@" \
       -e "s@/usr/local/lib/perl5@/usr/lib/perl5/site_perl/5.12.1@" \
       -e "s@/usr/local/lib/www/docs@/usr/share/doc/perl5@" \
    Makefile

Теперь в роли пользователя root выполните:

make install &&
install -v -m755 -d /usr/share/doc/perl5 &&
make install_html &&
rm -v -f /usr/share/doc/perl5/SGMLSpm/sample.pl &&
install -v -m644 DOC/sample.pl /usr/share/doc/perl5/SGMLSpm

Test::Pod-1.44

Модуль Test:Pod (большей частью, являющийся необязательным) используется другими модулями в процессе сборки для проверки правильности файлов POD (Plain Old Documentation — документация с использованием простой текстовой разметки). С помощью Test:Pod обычно указываются авторы модулей, которых потом можно будет автоматически искать и проверять во всех файлах POD в дистрибутивах модулей. Этот модуль устанавливается с помощью стандартных инструкций по сборке и установке модулей Perl.

Test::Pod::Coverage-1.08

Модуль Test::Pod::Coverage используется для проверки наличия документации POD для файлов, имеющихся в дистрибутиве. Обычно используется разработчиками с тем, чтобы в проектах была достаточно адекватно представлена документация POD, и также используется в тестовых наборах в дистрибутивах многих модулей. Этот модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установкемодулей Perl.

Text::Diff-0.35

Модуль Text::Diff используется для выполнения сравнений файлов и наборов записей. В нем предоставлен базовый набор сервисов, похожих на возможности утилиты GNU diff. Возможности этого модуля не всегда совпадают с возможностями GNU diff, но он лучше интегрирован с Perl и доступен на всех платформах. Модуль Text::Diff часто работает быстрее для небольших файлов, чем доступная из командной оболочки системная утилита diff, и, как правило, медленнее на больших файлах. Модули, перечисленные ниже, устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Tk-804.029

Модуль Tk является интерфейсом Perl для пакета Tk. Он предназначен для поддержки юникода за счет использования в Perl и Tk кодировки UTF-8. Модуль Tk-804.029 собирается и загружается в поток Perl и НЕ образует отдельного безопасного потока. Модуль устанавливается с помощью стандартных инструкций по сборке и установке модулей Perl.

URI-1.35

Модуль URI реализует класс URI. Объекты этого класса представляют собой универсальные идентификаторы ресурсов (Uniform Resource Identifier) так, как они определены в RFC 2396 и обновлены согласно RFC 2732, и могут быть использованы для доступа и управления различными компонентами, в которых используются такие идентификаторы. Модуль URI и все его зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

  • URI-1.35
    • Business-ISBN-1.84 (необязательная, используется при тестировании)
      • LWP::Simple требуется для многих тестов. Это циклическая зависимость.
        • Business-ISBN-Data-1.17
          • Test-Prereq-1.033 (вам может потребоваться настроить параметры доступа к CPAN; для этого перед тем, как запускать тестовый набор, выполните команду perl -MCPAN -e shell, в противном случае тесты могут зависнуть)
          • Test::Pod::Coverage-1.08 (необязательная, используется при тестировании)

XML::Parser-2.40

Модуль XML::Parser является интерфейсом расширения Perl для парсера XML Джеймса Кларка (James Clark's XML parser). Модуль устанавливается с помощью стандартных инструкций по сборке и установке модулей Perl.

XML::Simple-2.18

Модуль XML::Simple является расширением Perl, предлагающим простой API для чтения и записи XML (особенно конфигурационных файлов). Модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установкее модулей Perl.

YAML-0.65

Модуль YAML является загрузчиком и средством выдачи дампа YAML, реализованного в соответствие со спецификациями YAML 1.0 (смотрите http://www.yaml.org/spec/). YAML является языком сериализации данных общего назначения, который оптимизирован для визуальное восприятие человеком. Его можно жет использоваться для выражения структур данных наиболее современных языков программирования. Модуль и зависимости устанавливаются с помощью стандартных инструкций по сборке и установке модулей Perl.

Замечание

Модули YAML, Test::Base и Spiffy будут устанавливать страницы руководств в кодировке UTF-8. Для установки страниц руководств, в которых кодировка UTF-8 не используется, внесите изменения с помощью следующих команд (выполните их прежде, чем будете выполнять какую-либо команду сборки):

Для Spiffy:     sed -i 's,\xc3\xb6,o,' lib/Spiffy.pm

Для Test::Base: sed -i 's,\xc3\xb6,o,' \
                  lib/Test/Base{,/Filter}.pm \
                  lib/Module/Install/TestBase.pm

Для YAML:       sed -i 's,\xc3\xb6,o,' \
                  ysh \
                  lib{,/Test}/YAML.pm \
                  lib/YAML/{Types,Node,Error,Marshall,Tag,Base}.pm \
                  lib/YAML/{Loader,Dumper}{,/Base}.pm

Стандартная установка модулей Perl

Установите пакет Perl при помощи следующих команд:

perl Makefile.PL &&
make &&
make test

Теперь в роли пользователя root выполните:

make install

Замечание

Когда модуль Perl переустанавливается, иногда более старые версии модуля переустанавливаются не в те директории, которые указаны в переменной @INC. Чтобы во время переустановки удалить все другие версии модуля (а не просто старые версии), установите значение переменной UNINST:

make install UNINST=1

(Альтернативная) автоматическая установка модулей Perl

Есть альтернативный способ установки модулей при помощи команды install, которая выполняется в командной оболочке cpan. Команда автоматически загружает из архива CPAN исходный код , распаковывает его, выполняет компиляцию, тестирование и выполняет те установочные команды, которые были приведены выше, а затем удаляет дерево исходных кодов. Перед тем, как запускать метод автоматической установки, вам, возможно, потребуется установить пакеты с библиотеками зависимостей.

При первом запуске команды cpan вам будет предложено ввести некоторую информацию, касающуюся места, откуда происходит загрузка, и методов загрузки. Эта информация сохраняется в файлах, расположенных в ~/.cpan. С помощью команды "cpan", которую следует выполнить в роли пользователя root, запустите оболочку cpan. Теперь, если в ответ на приглашение cpan> набрать следующую команду, то можно установить любой модуль:

install <Модуль::Имя>

Если в ответ на приглашение cpan> вы наберете команду 'help', то получите подсказку и описание дополнительных возможностей.

Либо в случае установки с помощью скрипта или в случае неинтерактивной установки воспользуйтесь в роли пользователя root командой со следующим синтаксисом и установите один или нескольких модулей:

cpan -i <Модуль1::Имя> <Модуль2::Имя>

Дополнительные параметры, которые можно набрать в командной строке cpan, смотрите на странице man cpan.1.

Перевод сделан с варианта оригинала, датированного 2011-01-21 14:37:25 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет PDL-2.4.2   Пакет PHP-5.3.8