perlmodinstall
СОДЕРЖАНИЕ
ИМЯ
perlmodinstall - Установка модулей CPAN
ОПИСАНИЕ
Модуль можно рассматривать как основную единицу повторно используемого Perl-кода; см. perlmod для подробностей. Всякий раз, когда кто-то создает кусок Perl-кода, который, по его мнению, будет полезен миру, он регистрируется как Perl-разработчик на https://www.cpan.org/modules/04pause.html, чтобы затем загрузить свой код на CPAN. CPAN — это всеобъемлющая сеть архивов Perl, доступ к которой можно получить по адресу https://www.cpan.org/, а поиск — по адресу https://metacpan.org/.
Это руководство для тех, кто хочет загрузить модули CPAN и установить их на свой компьютер.
ПРЕДИСЛОВИЕ
Сначала, вы уверены, что модуль уже не на вашей системе? Попробуйте perl -MFoo -e 1. (Замените "Foo" на имя модуля; например, perl -MCGI::Carp -e 1.)
Если вы не видите сообщение об ошибке, у вас есть модуль. (Если вы видите сообщение об ошибке, всё ещё возможно, что у вас есть модуль, но он не в вашем пути, который вы можете отобразить с помощью perl -e "print qq(@INC)".) В дальнейшем в этом документе мы будем исходить из того, что у вас действительно нет установленного модуля, но вы нашли его на CPAN.
Итак, теперь у вас есть файл с расширением .tar.gz (или, реже, .zip). Вы знаете, что внутри находится вкусный модуль. Теперь вам нужно выполнить четыре шага:
- РАЗЖАТЬ файл
- РАСПАКОВАТЬ файл в каталог
- СОБРАТЬ модуль (иногда не требуется)
- УСТАНОВИТЬ модуль.
Вот как выполнить каждый шаг для каждой операционной системы. Это <не> замена чтению файлов README и INSTALL, которые могут поставляться с вашим модулем!
Также обратите внимание, что эти инструкции предназначены для установки модуля в репозиторий Perl-модулей вашей системы, но вы можете установить модули в любой каталог, который вам нравится. Например, где я пишу perl Makefile.PL, вы можете заменить на perl Makefile.PL PREFIX=/my/perl_directory для установки модулей в каталог /my/perl_directory. Затем вы можете использовать модули из ваших Perl-программ с помощью use lib "/my/perl_directory/lib/site_perl"; или иногда просто use "/my/perl_directory";. Если ваша система требует доступа суперпользователя/root для установки модулей в каталоги, которые вы видите, когда набираете perl -e "print qq(@INC)", вы захотите установить их в локальный каталог (например, в домашний каталог) и использовать этот подход.
-
Если вы используете Unix или Unix-подобную систему,
Вы можете использовать модуль CPAN Андрея Кёнига ( https://metacpan.org/release/CPAN ) для автоматизации следующих шагов, начиная с РАЗЖАТЬ и заканчивая УСТАНОВИТЬ.
A. РАЗЖАТЬ
Разархивируйте файл с помощью
gzip -d yourmodule.tar.gzВы можете получить gzip с ftp://prep.ai.mit.edu/pub/gnu/
Или вы можете объединить этот шаг с следующим, чтобы сохранить место на диске:
gzip -dc yourmodule.tar.gz | tar -xof -B. РАСПАКОВАТЬ
Распакуйте результат с помощью
tar -xof yourmodule.tarC. СОБРАТЬ
Перейдите в созданный каталог и введите:
perl Makefile.PL make testили
perl Makefile.PL PREFIX=/my/perl_directoryчтобы установить его локально. (Помните, что в этом случае вам нужно будет добавить
use lib "/my/perl_directory";в начало программы, которая должна использовать этот модуль.)D. УСТАНОВИТЬ
Находясь в этом каталоге, введите:
make installУбедитесь, что у вас есть соответствующие разрешения для установки модуля в каталог библиотек Perl 5. Часто для этого требуется доступ root.
Этого достаточно для систем Unix с динамической компоновкой. Большинство систем Unix используют динамическую компоновку. Если ваша система не использует динамическую компоновку или по другой причине у вас статически скомпонованный Perl, и модуль требует компиляции, вам необходимо создать новый бинарный файл Perl, включающий модуль. Опять же, вам, вероятно, потребуется доступ root.
-
Если вы используете ActivePerl (Win95/98/2K/NT/XP, Linux, Solaris),
Сначала введите
ppmиз оболочки и посмотрите, есть ли ваш модуль в репозитории ActiveState PPM. Если да, вы можете установить его с помощьюppm, и вам не придётся выполнять остальные шаги. Возможно, вы сможете использовать инструкции CPAN из раздела "Unix или Linux" выше; попробуйте. В противном случае вам нужно будет выполнить шаги ниже.A. DECOMPRESSВы можете использовать бесплатный 7-zip ( https://www.7-zip.org/ ) или утилиту Winzip ( https://www.winzip.com ) для распаковки модулей.
B. UNPACKЕсли вы использовали WinZip, это уже было сделано за вас.
C. BUILDВам потребуется либо
nmakeилиgmake.Требует ли модуль компиляции (т. е. содержит ли он файлы с расширениями .xs, .c, .h, .y, .cc, .cxx или .C)? Если да, вам придётся самостоятельно скомпилировать модуль (это непросто сделать в Windows). Вам понадобится компилятор, такой как Visual C++. В качестве альтернативы вы можете скачать предварительно скомпилированный пакет PPM с сайта ActiveState. http://aspn.activestate.com/ASPN/Downloads/ActivePerl/PPM/
Перейдите в созданный каталог и введите:
perl Makefile.PL nmake test D. INSTALLНаходясь в этом каталоге, введите:
nmake install -
Если вы используете OS/2,
Получите комплект разработки EMX и gzip/tar от Хобби ( http://hobbes.nmsu.edu/h-browse.php?dir=/pub/os2/dev/emx/v0.9d ), а затем следуйте инструкциям для Unix.
-
Если вы используете VMS,
При загрузке с CPAN сохраните файл с расширением
.tgzвместо.tar.gz. Все остальные точки в имени файла следует заменить на подчеркивания. Например,Your-Module-1.33.tar.gzследует загрузить какYour-Module-1_33.tgz.A. РАЗЖАТЬ
Введите
gzip -d Your-Module.tgzили, для архивов zip, введите
unzip Your-Module.zipИсполняемые файлы gzip, zip и VMStar:
http://www.hp.com/go/openvms/freeware/и их исходный код:
http://www.fsf.org/order/ftp.htmlОбратите внимание, что gzip/gunzip от GNU не совпадает с пакетом zip/unzip от Info-ZIP. Первый — это простая утилита для сжатия, а второй позволяет создавать многофайловые архивы.
B. РАСПАКОВАТЬ
Если вы используете VMStar:
VMStar xf Your-Module.tarИли, если вы предпочитаете синтаксис команд VMS:
tar/extract/verbose Your_Module.tarC. СОБРАТЬ
Убедитесь, что у вас есть MMS (от Digital) или бесплатный MMK (доступен от MadGoat на http://www.madgoat.com ). Затем введите это, чтобы создать DESCRIP.MMS для модуля:
perl Makefile.PLТеперь вы готовы собрать:
mms testЗамените
mmkнаmmsвыше, если вы используете MMK.D. УСТАНОВИТЬ
Введите
mms installЗамените
mmkнаmmsвыше, если вы используете MMK. -
Если вы используете MVS,
Введите файл .tar.gz в HFS в виде двоичного файла; не преобразуйте из ASCII в EBCDIC.
A. РАЗЖАТЬ
Разархивируйте файл с помощью
gzip -d yourmodule.tar.gzВы можете получить gzip с http://www.s390.ibm.com/products/oe/bpxqp1.html
B. РАСПАКОВАТЬ
Распакуйте результат с помощью
pax -o to=IBM-1047,from=ISO8859-1 -r < yourmodule.tarШаги СОБРАТЬ и УСТАНОВИТЬ идентичны шагам для Unix. Некоторые модули генерируют файлы Makefiles, которые лучше работают с GNU make, доступным с http://www.mks.com/s390/gnu/
ПЕРЕНОСИМОСТЬ
Обратите внимание, что не все модули будут работать на всех платформах. См. perlport для получения дополнительной информации о проблемах с переносимостью. Прочтите документацию, чтобы узнать, будет ли модуль работать на вашей системе. Существует в основном три категории модулей, которые не будут работать "из коробки" на всех платформах (с некоторой возможностью перекрытия):
-
Те, которые должны, но не работают. Их нужно исправить; обратитесь к автору и, возможно, напишите патч.
-
Те, которые нужно скомпилировать, где целевая платформа не имеет доступных компиляторов. (Эти модули обычно содержат файлы с расширениями .xs или .c.) Вы можете найти готовые бинарные файлы на CPAN или где-либо ещё, или можете попробовать получить компиляторы и скомпилировать их самостоятельно, а затем выпустить двоичный файл для использования другими пользователями.
-
Те, которые предназначены для конкретной платформы. (Например, модули Win32::) Если модуль предназначен специально для платформы, отличной от вашей, скорее всего, у вас ничего не получится.
Проверьте CPAN Testers, если модуль должен работать на вашей платформе, но он не работает так, как ожидалось, или вы не уверены, будет ли модуль работать на вашей платформе. Если нужный вам модуль не указан там, вы можете проверить его самостоятельно и сообщить об этом CPAN Testers, присоединиться к CPAN Testers или запросить проверку.
https://cpantesters.org/ ЗАМЕТКА
Если у вас есть предложения по изменениям для этой страницы, сообщите мне. Пожалуйста, не отправляйте мне письма с просьбой помочь в установке ваших модулей. Модулей слишком много, а "желающих" слишком мало, чтобы я смог ответить или даже подтвердить все ваши вопросы. Обратитесь к автору модуля, спросите у кого-то, кто знаком с Perl на вашей операционной системе, или, в крайнем случае, создайте запрос на отслеживание на https://rt.cpan.org/.
АВТОР
Джон Орвонт
orwant@medita.mit.edu
с неоценимой помощью Криса Нандора и ценной помощью Брендона Алберри, Чарльза Бейли, Грема Барра, Доминика Данлопа, Яркко Хьетаниеми, Бена Холцмана, Тома Хорсли, Ника Инг-Симмонса, Туомаса Ю. Лукки, Ласло Молнара, Алана Олсена, Питера Приммера, Гурусами Сарати, Кристофа Спалингера, Дана Сугальского, Лэрри Вирдена и Ильи Захаревича.
Первая версия от 22 июля 1998 года; последняя ревизия от 21 ноября 2001 года.
АВТОРСКИЕ ПРАВА
Авторские права © 1998, 2002, 2003 Джон Орвонт. Все права защищены.
Этот документ может быть распространён на тех же условиях, что и Perl сам по себе.
© 1993–2023 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.38.0/perlmodinstall