Как я могу установить XML:: LibXML на Ubuntu

вот stdout для установки:

$sudo cpanm XML::LibXML
--> Working on XML::LibXML
Fetching http://www.cpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0014.tar.gz ... OK
Configuring XML-LibXML-2.0014 ... N/A
! Configure failed for XML-LibXML-2.0014. See /home/kahmed/.cpanm/build.log for details.

детали:

Unpacking XML-LibXML-2.0014.tar.gz
Entering XML-LibXML-2.0014
Checking configure dependencies from META.yml
Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.55_02)
Configuring XML-LibXML-2.0014
Running Makefile.PL
enable native perl UTF8
running xml2-config...ok (2.9.0)
Checking for ability to link against xml2...no
Checking for ability to link against libxml2...libxml2, zlib, and/or the Math library (-lm) have not been found.
Try setting LIBS and INC values on the command line
Or get libxml2 from
  http://xmlsoft.org/
If you install via RPMs, make sure you also install the -devel
RPMs, as this is where the headers (.h files) are.

Also, you may try to run perl Makefile.PL with the DEBUG=1 parameter
to see the exact reason why the detection of libxml2 installation
failed or why Makefile.PL was not able to compile a test program.
-> N/A
-> FAIL Configure failed for XML-LibXML-2.0014. See /home/kahmed/.cpanm/build.log for details.

Я попытался установить libxml2 вручную, но все равно получаю ту же проблему.

кроме того, я проверил libxml2-dev:

 sudo apt-get install libxml2-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libxml2-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 78 not upgraded.

вот информация о системе:

 lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 11.04
Release:    11.04
Codename:   natty

команды uname -а Linux autobot 2.6.38-8-server #42-Ubuntu SMP Пн апр 11 03:49: 04 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

4 ответов


Я думаю, что соответствующая строка:

Checking for ability to link against libxml2...libxml2, zlib, and/or the Math library (-lm) have not been found.

Итак, вы покрыли libxml. Вы установили соответствующий пакет zlib? Попробуйте:

sudo apt-get install zlib1g-dev

затем попробуйте установить модуль XML::снова в libxml.


почему вы хотите использовать CPAN для этого в любом случае? Обычно очень плохо устанавливать пакеты CPAN, если у вас есть собственные пакеты, предоставляемые стандартным установщиком операционной системы.

Ubuntu предоставляет много пакетов Perl изначально, со следующим соглашением об именах: имя пакета всегда начинается с lib, затем имя пакета Perl, например XML::LibXML преобразуется в нижний регистр и :: заменено на dash - (XML::LibXML =>xml-libxml), и, наконец,-perl добавлен суффикс. Другими словами, собственное имя пакета для XML::LibXML будет libxml-libxml-perl.

Итак, в вашем случае вы просто запустите эту команду, и она автоматически вытащит все необходимые зависимости:

sudo apt-get install libxml-libxml-perl

Если вам не нравится этот пакет по какой-либо причине, вы можете удалить его с sudo apt-get remove. Если вы используете CPAN, очень трудно удалить его надежно.


забывают очевидное:

sudo apt-get install --reinstall zlibc zlib1g zlib1g-dev

затем:

sudo cpanm XML::LibXML

работает!


возможно, это новая версия. Я:

sudo apt-get install libxml2-dev

после того, как этот модуль построен и установлен успешно