Использование LibXML в perl

#xml #perl

#xml #perl

Вопрос:

Я пишу скрипт, который выполняет обработку XML. use Заключается в следующем:

 use XML::LibXML;
  

Но он не компилируется:

 Can't locate XML/LibXML.pm in @INC
  

Кто-нибудь может сказать мне, какой пакет мне нужно установить (под управлением Ubuntu). libxml2 не помогает, как и ни один из libxml-*-perl пакетов.

Или, если возможно, есть ли какой-либо лучший способ для простой обработки XML?

Комментарии:

1. Установка libxml-libxml-perl не помогла? Это утверждает, что является правильным для XML::LibXML.

2. Нет лучшего способа обработки XML в Perl, чем использование XML::LibXML . Будет ли использование XML::Simple проще или приведет к ужасному беспорядку, зависит от таких факторов, как ваш ввод XML и ваши намерения по обработке. По моему опыту, это приводит к ужасному беспорядку в любой ситуации, кроме самой простой из простых.

Ответ №1:

В Debian это называется libxml-libxml-perl . (Вообще говоря, пакеты Debian дистрибутивов Perl называются "lib".lc($perl_dist_name)."-perl" .) Я подозреваю, что это то же самое в Ubuntu, основанном на Debian.

libxml2 это базовая библиотека C , используемая XML::LibXML, а не сам XML::LibXML.

Ответ №2:

Существует команда с именем apt-file.

 sudo apt-get install apt-file
apt-file update
apt-file search LibXML.pm
  

Требуемый пакет — libxml-libxml-perl

Ответ №3:

Я думаю, что самый простой способ установить «XML:: LibXML» в ОС на базе da Debian — использовать эту команду:

 aptitude install libxml-libxml-perl
  

Для меня это работает, если я получаю эту ошибку, которую вы также получаете, пытаясь заставить скрипт работать.

 perl -MCPAN -e 'install XML::LibXML'
  

также должно работать.

Ответ №4:

Как вы устанавливали модуль? попробуйте: perl -MCPAN -e 'XML::LibXML'

из командной строки.

Ответ №5:

Вы можете определить, какой пакет вам нужен для данного модуля perl, переведя имя модуля в путь (например, XML::LibXML в XML / LibXML.pm) и выполнив онлайн-поиск пакетов, содержащих пути к файлам, заканчивающиеся на это, например:

http://packages .debian.org/file:XML/LibXML.pm

или

http://packages.ubuntu.com/file:XML/LibXML.pm

На странице результатов вы можете переключиться на поиск другой версии, если вы используете что-то отличное от текущего по умолчанию для поиска пакетов.