2013-10-28 186 views
1

我尝试安装perl模块XML :: LibXSLT,但失败。现在搜索了好几个小时,但没有任何帮助,所以我发布了这个。也许有人可以帮忙! 在此先感谢!cpan XML :: LibXSLT未能安装

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 

'

任何帮助,不胜感激!

+0

相关:http://www.perlmonks.org/?node_id=472115 – RobEarl

+0

嗨,我正在研究一个CentOS6.4系统。这是来自locate gdbm的输出#locate gdbm /usr/lib64/libgdbm.so.2 /usr/lib64/libgdbm.so.2.0.0 /usr/lib64/python2.6/lib-dynload/gdbmmodule。 so /usr/lib64/ruby/1.8/x86_64-linux/gdbm.so /usr/share/doc/gdbm-1.8.0 /usr/share/doc/gdbm-1.8.0/COPYING /usr/share/doc/gdbm-1.8.0/NEWS /usr/share/doc/gdbm-1.8.0/README /usr/share/mime/application/x-gdbm.xml ....所以好像gdbm安装 –

回答

4
/usr/bin/ld: cannot find -lgdbm 

看起来你没有安装GDBM库做。我看不到你正在使用哪种Linux(或者可能是Unix)发行版,但gdbm几乎可以确实被打包,所以你只需要弄清楚这个软件包是什么,然后使用apt或yum(或者什么是合适的)来安装它。

+0

哎呀,你比我快:) – slayedbylucifer

+0

嘿使用'yum install gdbm'它返回已经安装最新版本... –

+0

它可能还需要-devel软件包('yum install gbdm -devel')。但是您是否知道许多CPAN模块已经可用于Fedora/CentOS/RHEL?试试'yum install perl-XML-LibXSLT'。 (** Note **,为了在Centos上获得最佳的CPAN支持,您需要配置EPEL存储库 - 请参阅http://fedoraproject.org/wiki/EPEL) –

5

错误是/usr/bin/ld: cannot find -lgdbm。你在你的系统上找到gdbm库吗?

运行:

# updatedb 
# locate gdbm 

locate命令的输出应该列出libgdbm.so。如果没有,那么尝试安装相同的使用你的发行版的包管理器:

这里是我的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 

,这里是从我的RHEL 6.4的输出:

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

要安装gdbm,请运行以下命令:

on Ubuntu:apt-get install libgdbm3

在centos/RHEL上:yum install gdbm

希望这有助于。