Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: CPAN, recursive dependency problem

by saintmike (Vicar)
on Jan 28, 2005 at 01:16 UTC ( [id://425830]=note: print w/replies, xml ) Need Help??


in reply to CPAN, recursive dependency problem

You could break the cycle by downloading individual tarballs, e.g:
cpan> get K/KW/KWILLIAMS/PathTools-3.03.tar.gz
hunt it down on disk (~/.cpan/sources/...), untar, build and install manually:
tar zxfv PathTools-3.03.tar.gz cd PathTools-3.03 perl Makefile.PL make install

Replies are listed 'Best First'.
Re^2: CPAN, recursive dependency problem
by ecsd (Initiate) on Jan 28, 2005 at 01:29 UTC

    Where (or how) does CPAN's install figure that there is a dependency? I would like to be able to break stuff to lie to it,
    and I'd as soon break the "idea" that there is a dependency loop.

    Also, if this comes up with any frequency, I'd suggest enforcing some scheme to prevent such loops in the first place.
    I haven't seen any reference to this issue in any other FAQs (CPAN, Perl) but it bites often enough.

    Thanks for the information.
    -ecsd

Re^2: CPAN, recursive dependency problem
by ecsd (Initiate) on Jan 28, 2005 at 01:33 UTC
    It's worth pointing out that CPAN will also not allow a "get"
    of a module in a dependency chain, so that has to be done manually also.
      It's worth pointing out that CPAN will also not allow a "get" of a module in a dependency chain ...

      Not true.

      Here's a quick way to verify dependencies (even circular ones): There's two modules on CPAN with the sole purpose of defining a circular dependency between each other: Acme::Prereq::A and Acme::Prereq::B.

      Acme::Prereq::A depends on Acme::Prereq::B and vice versa, see Acme::Prereq::A's Makefile.PL:

      'PREREQ_PM' => { 'Acme::Prereq::B' => 0, }, # e.g., Module::Name => 1.1

      Try it out, it works fine:

      perl -MCPAN -eshell cpan> get Acme::Prereq::B

      The CPAN shell's get command will fetch the requested module's tarball without checking dependencies.

      However, if you've run into a recursive dependency within a CPAN session, CPAN.pm will keep complaining, even if you switch to get. Restart the CPAN shell to get back to normal.

Log In?
Username:
Password:

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

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

    No recent polls found