cpan XML::LibXSLT failed to install

最后都变了- 提交于 2019-12-24 09:39:29

问题


i tried installing the perl module XML::LibXSLT but it fails. googled for it for hours now but nothing help so i am posting this. Maybe someone can help! Thanks in advance!

cpan XML::LibXSLT
CPAN: Storable loaded ok (v2.20)
Going to read '/root/.cpan/Metadata'
Database was generated on Mon, 28 Oct 2013 11:08:37 GMT
Running install for module 'XML::LibXSLT'
CPAN: YAML loaded ok (v0.84)
Running make for S/SH/SHLOMIF/XML-LibXSLT-1.81.tar.gz
CPAN: Digest::SHA loaded ok (v5.47)
CPAN: Compress::Zlib loaded ok (v2.062)
Checksum for /root/.cpan/sources/authors/id/S/SH/SHLOMIF/XML-LibXSLT-1.81.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.58)
XML-LibXSLT-1.81/
XML-LibXSLT-1.81/perl-libxml-mm.h
XML-LibXSLT-1.81/benchmark/
XML-LibXSLT-1.81/benchmark/Driver/
XML-LibXSLT-1.81/benchmark/Driver/Sablotron.pm
XML-LibXSLT-1.81/benchmark/Driver/LibXSLT.pm
XML-LibXSLT-1.81/benchmark/Driver/BaseClass.pm
XML-LibXSLT-1.81/benchmark/benchmark.pl
XML-LibXSLT-1.81/Changes
XML-LibXSLT-1.81/LibXSLT.pm
XML-LibXSLT-1.81/MANIFEST
XML-LibXSLT-1.81/testcases/
XML-LibXSLT-1.81/testcases/default.conf
XML-LibXSLT-1.81/example/
XML-LibXSLT-1.81/example/fatal.xsl
XML-LibXSLT-1.81/example/2.xml
XML-LibXSLT-1.81/example/bad3.xsl
XML-LibXSLT-1.81/example/nonfatal.xsl
XML-LibXSLT-1.81/example/1.xml
XML-LibXSLT-1.81/example/bad2.xsl
XML-LibXSLT-1.81/example/1.xsl
XML-LibXSLT-1.81/example/2.xsl
XML-LibXSLT-1.81/example/bad1.xsl
XML-LibXSLT-1.81/Makefile.PL
XML-LibXSLT-1.81/META.yml
XML-LibXSLT-1.81/META.json
XML-LibXSLT-1.81/README
XML-LibXSLT-1.81/t/
XML-LibXSLT-1.81/t/04params.t
XML-LibXSLT-1.81/t/rt71345_a.t
XML-LibXSLT-1.81/t/09exslt.t
XML-LibXSLT-1.81/t/06output.t
XML-LibXSLT-1.81/t/03input.t
XML-LibXSLT-1.81/t/08literal.t
XML-LibXSLT-1.81/t/02dromeds.t
XML-LibXSLT-1.81/t/06entities.t
XML-LibXSLT-1.81/t/11utf8.t
XML-LibXSLT-1.81/t/10functions.t
XML-LibXSLT-1.81/t/05quick.t
XML-LibXSLT-1.81/t/07blankdoc.t
XML-LibXSLT-1.81/t/13error.t
XML-LibXSLT-1.81/t/01basic.t
XML-LibXSLT-1.81/t/14security.t
XML-LibXSLT-1.81/t/12import.t
XML-LibXSLT-1.81/t/15misc.t
XML-LibXSLT-1.81/t/rt71345_b.t
XML-LibXSLT-1.81/typemap
XML-LibXSLT-1.81/LibXSLT.xs
XML-LibXSLT-1.81/ppport.h
XML-LibXSLT-1.81/perl-libxml-mm.c
CPAN: File::Temp loaded ok (v0.22)

  CPAN.pm: Going to build S/SH/SHLOMIF/XML-LibXSLT-1.81.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... yes
looking for -lexslt... yes
running pkg-config libexslt... ok
Checking if your kit is complete...
Looks good
Generating a GNU-style Makefile
Writing Makefile for XML::LibXSLT
Writing MYMETA.yml and MYMETA.json
cp LibXSLT.pm blib/lib/XML/LibXSLT.pm
/usr/bin/perl /usr/share/perl5/ExtUtils/xsubpp  -typemap /usr/share/perl5/ExtUtils/typemap -typemap typemap  LibXSLT.xs > LibXSLT.xsc && mv LibXSLT.xsc LibXSLT.c
gcc -c  -I/usr/local/include -I/usr/include -I/usr/include/libxml2   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic   -DVERSION=\"1.81\" -DXS_VERSION=\"1.81\" -fPIC "-I/usr/lib64/perl5/CORE"  -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT LibXSLT.c
LibXSLT.xs: In function ‘LibXSLT__function’:
LibXSLT.xs:252: warning: pointer targets in passing argument 1 of ‘xmlNewDoc’ differ in signedness
/usr/include/libxml2/libxml/tree.h:735: note: expected ‘const xmlChar *’ but argument is of type ‘char *’
LibXSLT.xs: In function ‘LibXSLT_context_element’:
LibXSLT.xs:518: warning: unused variable ‘ent’
LibXSLT.xs: In function ‘LibXSLT_init_functions’:
LibXSLT.xs:916: warning: suggest parentheses around assignment used as truth value
LibXSLT.xs: In function ‘LibXSLT_init_elements’:
LibXSLT.xs:948: warning: suggest parentheses around assignment used as truth value
gcc -c  -I/usr/local/include -I/usr/include -I/usr/include/libxml2   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic   -DVERSION=\"1.81\" -DXS_VERSION=\"1.81\" -fPIC "-I/usr/lib64/perl5/CORE"  -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT perl-libxml-mm.c
rm -f blib/arch/auto/XML/LibXSLT/LibXSLT.so
LD_RUN_PATH="/usr/lib64:/lib64" gcc  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic LibXSLT.o perl-libxml-mm.o  -o blib/arch/auto/XML/LibXSLT/LibXSLT.so   \
   -L/usr/local/lib -L/usr/lib -lxslt -lxml2 -lz -lm -lexslt -lgcrypt -ldl -lgpg-error -lresolv -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc     \

/usr/bin/ld: cannot find -lgdbm
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/XML/LibXSLT/LibXSLT.so] Error 1
  SHLOMIF/XML-LibXSLT-1.81.tar.gz
  /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

'

Any help is highly appreciated!


回答1:


The error is /usr/bin/ld: cannot find -lgdbm. do you find gdbm library on your system?

run:

# updatedb
# locate gdbm

The output of locate command should list libgdbm.so. If it is not then try installing the same using your Distro's package manager:

Here is output on my ubuntu:

# locate gdbm
/usr/lib/libgdbm.so.3
/usr/lib/libgdbm.so.3.0.0
/usr/lib/libgdbm_compat.so.3
/usr/lib/libgdbm_compat.so.3.0.0

and here is the output from my RHEL 6.4:

# locate gdbm
/usr/lib64/libgdbm.so.2
/usr/lib64/libgdbm.so.2.0.0

To install gdbm, run these commands:

on ubuntu: apt-get install libgdbm3

On centos/RHEL: yum install gdbm

hope this helps.




回答2:


/usr/bin/ld: cannot find -lgdbm

Looks like you don't have the gdbm library installed. I can't see which Linux (or, perhaps, Unix) distribution you're using, but gdbm is almost certainly per-packaged for it, so you just need to work out what the package is called and use apt or yum (or whatever is appropriate) to install it.



来源:https://stackoverflow.com/questions/19635034/cpan-xmllibxslt-failed-to-install

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!