Вопрос

Я новичок в Perl, и я использую Активный пользователь.Я получаю следующую ошибку:

Не удается найти XML /LibXML.pm в @INC...

Я перепробовал все, но не могу найти шаги по установке "правильного" модуля для XML::LibXML.

Вот именно то, что происходит.Я запускаю скрипт из командной строки:

c: emp >perl myscript.pl

Первые несколько строк myscript.pl:

#!/usr/bin/perl

use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
use HTTP::Date;
use XML::Parser;
use LWP::UserAgent;
use XML::LibXML;
use Archive::Extract;
use Encode;
use LWP::Simple;

require HTTP::Request;
...

Затем я получаю эту ошибку:

c: emp >perl myscript.pl Не удается найти XML/LibXML.pm в @INC (@INC содержит:C:/Perl/site/lib C:/Perl/lib .) в myscript.pl строка 7.НАЧАТЬ сбой - компиляция прервана в myscript.pl строка 7

Это было полезно?

Решение

Вы должны быть в состоянии установить его с помощью Менеджер пакетов ActivePerl Perl.При установке ActivePerl должен был быть создан ярлык меню "Пуск", start графический интерфейс и найдите xml-libxml и libxml-perl.

--редактировать

Вот сообщение о добавлении альтернативного репозитория в PPM и установке XML-LibXML

Другие советы

Не похоже, что ActiveState предоставляет PPM с XML::LibXML .Я поискал в README модуль на CPAN, и, по-видимому, доступен предварительно созданный пакет ppm здесь.

Недавно я столкнулся с трудностями при установке XML::LibXML.Вот что я нашел:

  1. Мы используем ActiveState ActivePerl 5.8.8
  2. Для того, чтобы PPM ActivePerl мог проходить через наш прокси, пришлось создать переменную окружения "http_proxy" со значением "http://proxy.ext .[пример].com", затем повторно войти в систему.
  3. Не все требуемые пакеты были расположены в репозитории ActiveState.Добавлен репозиторий Perl Университета Виннипега http://theoryx5.uwinnipeg.ca/ppms/package.xml (обратите внимание, что точный используемый репозиторий зависит от вашей версии ActivePerl)
  4. Вручную установите следующие библиотеки DLL в C:\perl\bin \ (по какой-то причине у меня возникли некоторые проблемы со сборкой этих библиотек DLL, поэтому в итоге я просто извлек их из репозитория по адресу http://trouchelle.com/ppm/dll/ )
    • iconv.dll
    • libxml2.dll
    • zlib1.dll
  5. По крайней мере, для используемой нами версии XML-LibXML установщик пакета не работает корректно для обязательного XML-LibXML-Common.Ты ДОЛЖЕН установите пакет XML-LibXML-Common сам по себе, ДО ТОГО , КАК установка остальной части XML-LibXML.

Хотя они могут быть не самыми последними версиями, версии пакетов (включая предварительные требования), которые я использую в настоящее время, следующие:

  • XML-LibXML-Общий (версия 0.13)
  • XML-LibXML (версия 1.64)
  • XML-поддержка пространств имен (версия 1.10)
  • XML-SAX (версия 0.96)

Принятый ответ не сработал для меня в версии 5.16.От этот вопрос:

XML::LibXML не был готов к Perl 5.16.Установить 5.14

Скачать:

В конце концов, я нашел единственный альтернативный репозиторий ActivePerl, насколько я могу судить, и в нем был пакет для XML::LibXML 2.0121, который будет устанавливаться на perl версий до 5.20.x .

Вы можете получить выпуски ActivePerl отсюда, которые включают 5.20.2:downloads.activestate.com/ActivePerl/releases/

Альтернативный репозиторий называется Bribes de Perl по адресу bribes.org/perl/

URL-адрес репозитория , который вводится в параметрах, является http://bribes.org/perl/ppm/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top