alienhuman has asked for the wisdom of the Perl Monks concerning the following question:

I know this isn't strictly a perl question, but I really don't know of another forum that might have folks who are knowledgable enough to answer it.

I'm running:
Mac OS X 10.3.9 (7W98)
perl 5.8.1-RC3
libxml 1.8.17-14 (binary install w/fink)
libxml2 2.6.22-1 (binary install w/fink)
libxslt 1.1.15-2 (binary install w/fink)

When I try to install XML::LibXSLT with cpan, it fails the majority of the tests and fails to install. I've successfully installed XML::LibXML and XML::Parser, if that's useful information.

If anyone has any idea as to what's going on I'd greatly appreciate it. I'm not very familiar with make/test/etc. Output from cpan follows:

cpan> install XML::LibXSLT Running install for module XML::LibXSLT Running make for M/MS/MSERGEANT/XML-LibXSLT-1.58.tar.gz CPAN: Digest::SHA loaded ok CPAN: Module::Signature security checks disabled because Module::Sig +nature not installed. Please consider installing the Module::Signature mod +ule. You may also need to be able to connect over the Internet to the pub +lic keyservers like pgp.mit.edu (port 11371). CPAN: Compress::Zlib loaded ok Checksum for /Users/chris/.cpan/sources/authors/id/M/MS/MSERGEANT/XML- +LibXSLT-1.58.tar.gz ok Scanning cache /Users/chris/.cpan/build for sizes Deleting from cache: /Users/chris/.cpan/build/File-Temp-0.16 (10.7>10. +0 MB) Deleting from cache: /Users/chris/.cpan/build/Data-Dumper-2.121 (10.5> +10.0 MB) Deleting from cache: /Users/chris/.cpan/build/libnet-1.19 (10.2>10.0 M +B) XML-LibXSLT-1.58/ XML-LibXSLT-1.58/t/ XML-LibXSLT-1.58/t/05quick.t XML-LibXSLT-1.58/t/08literal.t XML-LibXSLT-1.58/t/03input.t XML-LibXSLT-1.58/t/09exslt.t XML-LibXSLT-1.58/t/11utf8.t XML-LibXSLT-1.58/t/02dromeds.t XML-LibXSLT-1.58/t/01basic.t XML-LibXSLT-1.58/t/04params.t XML-LibXSLT-1.58/t/06output.t XML-LibXSLT-1.58/t/07blankdoc.t XML-LibXSLT-1.58/t/10functions.t XML-LibXSLT-1.58/perl-libxml-mm.h XML-LibXSLT-1.58/testcases/ XML-LibXSLT-1.58/testcases/default.conf XML-LibXSLT-1.58/benchmark.pl XML-LibXSLT-1.58/Changes XML-LibXSLT-1.58/example/ XML-LibXSLT-1.58/example/1.xsl XML-LibXSLT-1.58/example/1.xml XML-LibXSLT-1.58/example/2.xsl XML-LibXSLT-1.58/example/2.xml XML-LibXSLT-1.58/MANIFEST XML-LibXSLT-1.58/typemap XML-LibXSLT-1.58/Driver/ XML-LibXSLT-1.58/Driver/LibXSLT.pm XML-LibXSLT-1.58/Driver/BaseClass.pm XML-LibXSLT-1.58/Driver/Sablotron.pm XML-LibXSLT-1.58/ppport.h XML-LibXSLT-1.58/perl-libxml-mm.c XML-LibXSLT-1.58/LibXSLT.pm XML-LibXSLT-1.58/README XML-LibXSLT-1.58/Makefile.PL XML-LibXSLT-1.58/LibXSLT.xs Removing previously used /Users/chris/.cpan/build/XML-LibXSLT-1.58 CPAN.pm: Going to build M/MS/MSERGEANT/XML-LibXSLT-1.58.tar.gz running xslt-config... ok looking for -lxslt... yes looking for -lexslt... yes Checking if your kit is complete... Looks good Writing Makefile for XML::LibXSLT cp benchmark.pl blib/lib/XML/benchmark.pl cp LibXSLT.pm blib/lib/XML/LibXSLT.pm /usr/bin/perl /System/Library/Perl/5.8.1/ExtUtils/xsubpp -typemap /Sy +stem/Library/Perl/5.8.1/ExtUtils/typemap -typemap typemap LibXSLT.xs + > LibXSLT.xsc && mv LibXSLT.xsc LibXSLT.c cc -c -I/sw/include -I/sw/include/libxml2 -g -pipe -pipe -fno-common +-DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -I/usr/local/inclu +de -Os -DVERSION=\"1.58\" -DXS_VERSION=\"1.58\" "-I/System/Library +/Perl/5.8.1/darwin-thread-multi-2level/CORE" -DHAVE_BLANK -DHAVE_BLA +NK -DHAVE_EXSLT LibXSLT.c cc -c -I/sw/include -I/sw/include/libxml2 -g -pipe -pipe -fno-common +-DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -I/usr/local/inclu +de -Os -DVERSION=\"1.58\" -DXS_VERSION=\"1.58\" "-I/System/Library +/Perl/5.8.1/darwin-thread-multi-2level/CORE" -DHAVE_BLANK -DHAVE_BLA +NK -DHAVE_EXSLT perl-libxml-mm.c Running Mkbootstrap for XML::LibXSLT () chmod 644 LibXSLT.bs rm -f blib/arch/auto/XML/LibXSLT/LibXSLT.bundle LD_RUN_PATH="/sw/lib:/usr/lib" MACOSX_DEPLOYMENT_TARGET=10.3 cc -bund +le -undefined dynamic_lookup -L/usr/local/lib LibXSLT.o perl-libxml-m +m.o -o blib/arch/auto/XML/LibXSLT/LibXSLT.bundle -L/sw/lib -lxslt +-lexslt -lxml2 -lz -lpthread -liconv -lm chmod 755 blib/arch/auto/XML/LibXSLT/LibXSLT.bundle cp LibXSLT.bs blib/arch/auto/XML/LibXSLT/LibXSLT.bs chmod 644 blib/arch/auto/XML/LibXSLT/LibXSLT.bs Manifying blib/man3/XML::LibXSLT.3pm /usr/bin/make -- OK Running make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_h +arness(0, 'blib/lib', 'blib/arch')" t/*.t t/01basic........ok + t/02dromeds......dubious + Test returned status 0 (wstat 10, 0xa) after all the subtests completed successfully t/03input........dubious + Test returned status 0 (wstat 10, 0xa) after all the subtests completed successfully t/04params.......dubious + Test returned status 0 (wstat 10, 0xa) DIED. FAILED tests 7-8 Failed 2/8 tests, 75.00% okay t/05quick........dubious + Test returned status 0 (wstat 10, 0xa) DIED. FAILED tests 6-7 Failed 2/7 tests, 71.43% okay t/06output.......dubious + Test returned status 0 (wstat 10, 0xa) DIED. FAILED tests 6-29 Failed 24/29 tests, 17.24% okay t/07blankdoc.....dubious + Test returned status 0 (wstat 10, 0xa) after all the subtests completed successfully t/08literal......dubious + Test returned status 0 (wstat 10, 0xa) after all the subtests completed successfully t/09exslt........dubious + Test returned status 0 (wstat 10, 0xa) after all the subtests completed successfully t/10functions....ok 14/14*** malloc[12623]: Deallocation of a pointer +not malloced: 0x357b; This could be a double free(), or free() called + with the middle of an allocated block; Try setting environment varia +ble MallocHelp to see tools to help debug t/10functions....dubious + Test returned status 0 (wstat 11, 0xb) after all the subtests completed successfully t/11utf8.........dubious + Test returned status 0 (wstat 11, 0xb) after all the subtests completed successfully Failed Test Stat Wstat Total Fail Failed List of Failed ---------------------------------------------------------------------- +--------- t/02dromeds.t 0 10 6 0 0.00% ?? t/03input.t 0 10 12 0 0.00% ?? t/04params.t 0 10 8 4 50.00% 7-8 t/05quick.t 0 10 7 4 57.14% 6-7 t/06output.t 0 10 29 48 165.52% 6-29 t/07blankdoc.t 0 10 5 0 0.00% ?? t/08literal.t 0 10 5 0 0.00% ?? t/09exslt.t 0 10 6 0 0.00% ?? t/10functions.t 0 11 14 0 0.00% ?? t/11utf8.t 0 11 7 0 0.00% ?? Failed 10/11 test scripts, 9.09% okay. 28/101 subtests failed, 72.28% +okay. make: *** [test_dynamic] Error 2 /usr/bin/make test -- NOT OK Running make install make test had returned bad status, won't install without force
----------
Using perl 5.8.1-RC3 unless otherwise noted. Apache/1.3.33 (Darwin) unless otherwise noted. Mac OS X 10.3.9 unless otherwise noted.

Replies are listed 'Best First'.
Re: XML::LibXSLT on OS X install problem
by jkeenan1 (Deacon) on Feb 05, 2006 at 23:04 UTC
    Have you tried running prove on any of the tests? Ex.:

    prove -vb t/02dromeds.t

    jimk

      I don't know what prove is. I'm using cpan to install the modules, and the only options I see are "get, make, test, install, clean". In fact, my system doesn't seem to have anything called prove installed.

      Can you explain? I'm quite teh n00b at this sort of thing, I'm afraid.

      AH

      ----------
      Using perl 5.8.1-RC3 unless otherwise noted. Apache/1.3.33 (Darwin) unless otherwise noted. Mac OS X 10.3.9 unless otherwise noted.
        I don't know what prove is.

        Don't feel bad... I had never heard of it either until now. (Thanks, jimk!)

        Luckily, you can do "perldoc prove", and read all about it. It will probably involve using your command-line shell to go into the ".cpan/build" directory being used by your cpan config (this is typically in your home directory), and from there into the subdir for the module in question; the test scripts are there in a subdir called "t", and you'll run "prove" on those.

        update: FWIW, I was able to install XML::LibXML just now on osx 10.4.4 with perl 5.8.6; I didn't get any of those "dubious" reports, let alone any deaths during testing. (There was this interesting comment:

        running xml2-config...untested WARNING! The installed version of libxml2 was not tested with this version of X +ML::LibXML. XML::LibXML may fail building or some tests may not pass. Expect strange errors and unstable scripts. Check the README file for more informations
        but nothing of that sort seems to have happened, and the warning never appeared again on a subsequent run of xml2-config.)

        Sometimes, when I've had trouble with installations via "perl -MCPAN -e shell", I've been able to work it out by going back to the unix shell, going into the directory under .cpan where the module package was unpacked, and mucking around manually with "make clean; perl Makefile.PL; make; make test". If any tests fail, look in the "t" subdir to find those tests, and step through them if need be. If they seem unrelated to my intended use of the module, I go ahead and do "make install" anyway; if they're important, I try to get the appropriate details to the module maintainer.

        One other point: my install involved a few dependencies -- other modules that I didn't have yet that XML::LibXML needed. These went fine too, but have you checked whether these modules are present and working correctly: XML::LibXML and XML::LibXML::Common.