Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

test modules fail install

by davidov0009 (Scribe)
on Nov 21, 2007 at 05:26 UTC ( [id://652060]=perlquestion: print w/replies, xml ) Need Help??

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

Hello.

I am attempting to use the MCPAN shell to install the module Business::PayPal on my Red Hat 9 server. I am running into problems when the required Net::SSLeay module drags in a bunch of other required Test modules that then fail. I get several @INC, BEGIN, and make errors. I have recorded the names of the modules that are creating these problems and the final output of the failed install, listed below:

---- Unsatisfied dependencies detected during [C/CH/CHORNY/Test-Warn-0 +.10.tar.gz] ----- Test::Exception Test::Builder::Tester . . . ---- Unsatisfied dependencies detected during [F/FL/FLORA/Net-SSLeay-1 +.32.tar.gz] ----- Test::Warn Test::Exception . . Writing Makefile for Test::Exception ---- Unsatisfied dependencies detected during [A/AD/ADIE/Test-Exceptio +n-0.25.tar.gz] ----- Test::Builder Test::Simple Test::Builder::Tester . . . Can't locate Net/SSLeay.pm in @INC (@INC contains: blib/lib blib/arch +/usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 /us +r/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/si +te_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8 +.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/ +perl5/vendor_perl /usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/l +ib/perl5/5.8.0 .) at blib/lib/Business/PayPal.pm line 9. BEGIN failed--compilation aborted at blib/lib/Business/PayPal.pm line +9. Compilation failed in require at test.pl line 10. BEGIN failed--compilation aborted at test.pl line 10. 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 Failed during this command: MOCK/Business-PayPal-0.02.tar.gz : make_test NO FLORA/Net-SSLeay-1.32.tar.gz : make NO ADIE/Test-Exception-0.25.tar.gz : make_test NO CHORNY/Test-Warn-0.10.tar.gz : make_test NO MSCHWERN/Test-Simple-0.72.tar.gz : make NO
There are many other errors in the long list of output but I am wondering how I can either avoid installing these test modules or fix these test problems. Thanks.

Replies are listed 'Best First'.
Re: test modules fail install
by dragonchild (Archbishop) on Nov 21, 2007 at 05:50 UTC
    Net::SSLeay is a notoriously hard module to install, particularly on Redhat systems (as are most crypto modules on RH systems). I would do the following (in this order - obviously stopping when I find a way that works):
    1. See if I can't use the RPM for Net::SSLeay (the finding of is left as an exercise for the reader).
    2. Install all the Test::* modules first, then try Net::SSLeay
    3. Hire someone (not me!) who's done this before for the couple hours it'll take and pay them $250. Make documentation of what they did a requirement. Even better would be an RPM. It'll be cheaper for your employer to do that than to have you faffing about for another 3 days and still not get it done.

    My criteria for good software:
    1. Does it work?
    2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      Thank you dragonchild, I downloaded the rpm, installed the module and then ran the MCPAN shell again for the paypal module, no complaints at all. I was unaware that modules came in rpm's. Thank you.
Re: test modules fail install
by perlfan (Vicar) on Nov 21, 2007 at 05:45 UTC
    If a module is required, and thusly creates a cascade of dependencies, there is not much you can do.

    You can try installing each module on its own via CPAN, or via the untar'd directory in /root/.cpan/build directory (assuming you /are/ root when doing this.

    There are 'force' and 'notest' pragmas one may use when installing modules, but I don't recommend this.

    If you determine there is a problem with a particular module, you'll most likely need to contact the maintainer.
Re: test modules fail install
by shmem (Chancellor) on Nov 21, 2007 at 11:55 UTC
    I'd first try to install RPM::Specfile on that box, and subsequently use cpanflute2 (included in that package) to build RPMS from CPAN Archives. cpanflute2 has its issues too (mostly due to the simplistic perl dependency finder /usr/lib/rpm/perl.req which lists optional modules as requirements also), but it is definitively the right thing to do.

    I guess that there's also a repository of RPMS for RH9 ... yup, Dag Wieers has them. Here you go:

    perl-Net-SSLeay-1.23-0.dag.rh90.i386.rpm

    and he also has RPM::Specfile.

    Run rpm -qlp --requires on the downloaded package, and get the rest of the dependecies too. After installing those RH9 rpms, you can get the source rpms, edit the spec files and update the tar.gz packages with newer stuff from CPAN, cpanflute them to RPMS and gradually upgrade until all deps are satisfied. Which may or may not work...

    Good luck! ;-)

    --shmem

    _($_=" "x(1<<5)."?\n".q·/)Oo.  G°\        /
                                  /\_¯/(q    /
    ----------------------------  \__(m.====·.(_("always off the crowd"))."·
    ");sub _{s./.($e="'Itrs `mnsgdq Gdbj O`qkdq")=~y/"-y/#-z/;$e.e && print}

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://652060]
Approved by ikegami
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (2)
As of 2024-04-16 23:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found