Как мне установить libXSLT для Perl XML :: LibXSLT?

Когда я запускаю сценарий Perl, я получаю

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

Поэтому я пытаюсь сделать это в cpan:


cpan> install XML::LibXSLT
CPAN: Storable loaded ok
Going to read /root/.cpan/Metadata
  Database was generated on Fri, 02 Oct 2009 13:28:24 GMT
Running install for module XML::LibXSLT
Running make for P/PA/PAJAS/XML-LibXSLT-1.68.tar.gz
CPAN: Digest::MD5 loaded ok
CPAN: Compress::Zlib loaded ok
Checksum for /root/.cpan/sources/authors/id/P/PA/PAJAS/XML-LibXSLT-1.68.tar.gz ok
Scanning cache /root/.cpan/build for sizes
XML-LibXSLT-1.68/
XML-LibXSLT-1.68/perl-libxml-mm.h
XML-LibXSLT-1.68/t/
XML-LibXSLT-1.68/t/08literal.t
XML-LibXSLT-1.68/t/09exslt.t
XML-LibXSLT-1.68/t/02dromeds.t
XML-LibXSLT-1.68/t/01basic.t
XML-LibXSLT-1.68/t/14security.t
XML-LibXSLT-1.68/t/12import.t
XML-LibXSLT-1.68/t/05quick.t
XML-LibXSLT-1.68/t/03input.t
XML-LibXSLT-1.68/t/13error.t
XML-LibXSLT-1.68/t/11utf8.t
XML-LibXSLT-1.68/t/04params.t
XML-LibXSLT-1.68/t/06entities.t
XML-LibXSLT-1.68/t/06output.t
XML-LibXSLT-1.68/t/07blankdoc.t
XML-LibXSLT-1.68/t/10functions.t
XML-LibXSLT-1.68/testcases/
XML-LibXSLT-1.68/testcases/default.conf
XML-LibXSLT-1.68/Changes
XML-LibXSLT-1.68/example/
XML-LibXSLT-1.68/example/1.xsl
XML-LibXSLT-1.68/example/2.xsl
XML-LibXSLT-1.68/example/fatal.xsl
XML-LibXSLT-1.68/example/nonfatal.xsl
XML-LibXSLT-1.68/example/bad1.xsl
XML-LibXSLT-1.68/example/1.xml
XML-LibXSLT-1.68/example/bad3.xsl
XML-LibXSLT-1.68/example/bad2.xsl
XML-LibXSLT-1.68/example/2.xml
XML-LibXSLT-1.68/MANIFEST
XML-LibXSLT-1.68/typemap
XML-LibXSLT-1.68/Driver/
XML-LibXSLT-1.68/Driver/LibXSLT.pm
XML-LibXSLT-1.68/Driver/Sablotron.pm
XML-LibXSLT-1.68/Driver/BaseClass.pm
XML-LibXSLT-1.68/perl-libxml-mm.c
XML-LibXSLT-1.68/LibXSLT.pm
XML-LibXSLT-1.68/benchmark.pl
XML-LibXSLT-1.68/ppport.h
XML-LibXSLT-1.68/LibXSLT.xs
XML-LibXSLT-1.68/Makefile.PL
XML-LibXSLT-1.68/README
XML-LibXSLT-1.68/META.yml
Removing previously used /root/.cpan/build/XML-LibXSLT-1.68

  CPAN.pm: Going to build P/PA/PAJAS/XML-LibXSLT-1.68.tar.gz

running xslt-config... failed
using fallback values for LIBS and INC
options:
  LIBS='-L/usr/local/lib -L/usr/lib -lxslt -lxml2 -lz -lm'
  INC='-I/usr/local/include -I/usr/include'
If this is wrong, Re-run as:
  $ /usr/bin/perl Makefile.PL LIBS='-L/path/to/lib' INC='-I/path/to/include'

looking for -lxslt... no
libxslt not found
Try setting LIBS and INC values on the command line
Or get libxslt and libxml2 from
  http://www.libxml.org/
If you install via RPMs, make sure you also install the -devel
RPMs, as this is where the headers (.h files) are.
make: *** No targets specified and no makefile found.  Stop.
  /usr/bin/make  -- NOT OK
Running make test
  Can't test without successful make
Running make install
  make had returned bad status, install seems impossible

Итак ... не повезло. Я попытался написать cpan> install XML::XSLT, который установился, но мой сценарий по-прежнему не работает. Что я могу сделать сейчас?

Я также пробовал использовать YaST для установки пакетов. Это был успех, затем я попробовал описанное выше, но все равно не повезло.

-дополнительный-

Я также пробовал строить привязки. С http://cpan.uwinnipeg.ca/dist/XML-LibXSLT я отключаю и написал

    # perl Makefile.PL
    running xslt-config... failed
    using fallback values for LIBS and INC
    options:
      LIBS='-L/usr/local/lib -L/usr/lib -lxslt -lxml2 -lz -lm'
      INC='-I/usr/local/include -I/usr/include'
    If this is wrong, Re-run as:
      $ /usr/bin/perl Makefile.PL LIBS='-L/path/to/lib' INC='-I/path/to/include'

    looking for -lxslt... no
    libxslt not found
    Try setting LIBS and INC values on the command line
    Or get libxslt and libxml2 from
      http://www.libxml.org/
    If you install via RPMs, make sure you also install the -devel
    RPMs, as this is where the headers (.h files) are.

person An employee    schedule 02.10.2009    source источник


Ответы (4)


на Ubuntu попробуйте

sudo apt-get install libxml-libxslt-perl
person rasta    schedule 18.08.2011

Вам не хватает библиотеки libxslt, которая должна быть доступна при использовании стандартной системы распространения пакетов вашей ОС (например, она доступна на macports для Darwin, но вы также можете загрузить его здесь.

Это ключевая часть вывода, которая указывает на это:

ищу -lxslt ... no
libxslt не найден

РЕДАКТИРОВАТЬ: поскольку вы, похоже, используете OpenSUSE, вы можете загрузить библиотеку прямо отсюда: http://www.novell.com/products/linuxpackages/opensuse/libxslt.html.

person Ether    schedule 02.10.2009
comment
ищу -lxslt ... да ищу -lexslt ... нет не могу найти exslt - person An employee; 02.10.2009

[В ответ на теперь объединенный вопрос «Я не могу найти exslt»:]

Вы ищете более подробный ответ, чем www.exslt.org?

person Ether    schedule 02.10.2009
comment
когда я DLed, были только файлы и не было библиотеки (файлы xsl IIRC) - person An employee; 02.10.2009

Установите пакеты libxml2-devel и libxslt-devel из YaST.

person daxim    schedule 04.01.2010