CGI/Perl Guide | Learning Center | Forums | Advertise | Login
Site Search: in

  Main Index MAIN
INDEX
Search Posts SEARCH
POSTS
Who's Online WHO'S
ONLINE
Log in LOG
IN

Home: Perl Programming Help: Beginner:
Circular dependency - Windows

 



WolfStock
New User

Sep 22, 2016, 11:53 AM

Post #1 of 7 (3623 views)
Circular dependency - Windows Can't Post

Greetings. Question from a newbie if I may.

I'm using perl on Windows, and having a problem with circular dependency. Specifically I'm trying to install the DBI library, using cpan, and I get:

cpan> install DBI

....

Recursive dependency detected:
DBI
=> T/TI/TIMB/DBI-1.636.tar.gz
=> File::Spec
=> R/RJ/RJBS/PathTools-3.62.tar.gz
=> Test::More
=> E/EX/EXODIST/Test-Simple-1.302056.tar.gz
=> File::Spec.
Cannot continue.


cpan>

I think it's because I have old version of some libraries - e.g. I get this up above:

Warning: prerequisite ExtUtils::MakeMaker 6.48 not found. We have 6.17.
Warning: prerequisite File::Spec 3.31 not found. We have 3.01.
Warning: prerequisite Test::Simple 0.90 not found.

For the life of me I cannot figure out how to update these libraries. If I do a "install ExtUtils::MakeMaker", I get the same set of circular dependencies. There doesn't seem to be a way to remove the existing out-of-date modules using cpan. If I simply rename the directory then cpan itself fails - it's dependent upon all 3 of those to even run!

I see various tips for working around this issue, but they're generally Linux-centric. I'm trying to do this on a Windows box.

Thanks for any help.


FishMonger
Veteran / Moderator

Sep 22, 2016, 1:39 PM

Post #2 of 7 (3617 views)
Re: [WolfStock] Circular dependency - Windows [In reply to] Can't Post

What version of perl are you using?

What version of cpan do you have installed?

Did you try to do an upgrade on the modules?
cpan> upgrade ExtUtils::MakeMaker

Personally, I'd start by making sure you have the latest cpan.
cpan> install Bundle::CPAN

That will also install/upgrade a number of other modules, including those pre req's you need.


WolfStock
New User

Sep 22, 2016, 6:15 PM

Post #3 of 7 (3613 views)
Re: [FishMonger] Circular dependency - Windows [In reply to] Can't Post

Thanks for the assistance. Responses:


In Reply To
What version of perl are you using?


v5.8.6


In Reply To
What version of cpan do you have installed?


Script version 1.03
CPAN.pm version 1.7601


In Reply To
Did you try to do an upgrade on the modules?
cpan> upgrade ExtUtils::MakeMaker


cpan says "Unknown command 'upgrade'". I figured the only way to do an upgrade was via the "install" command. (perhaps this is due to me using an old version of cpan)


In Reply To
Personally, I'd start by making sure you have the latest cpan.
cpan> install Bundle::CPAN

That will also install/upgrade a number of other modules, including those pre req's you need.


I did try that, but ran up against the same problem; cpan cannot upgrade itself because of the recursive dependency problem. When it encounters that problem it says "Cannot continue."

Additionally it seemed to have problems with a couple of files. E.g. it could not find:

ftp://ftp.perl.org/pub/CPAN/authors/id/J/JD/JDB/Win32-0.52.tar.gz

When I try to manually FTP that file, it prompts me for userid and password; of which I have no clue what to use. (It does not accept default)

Thanks again for the help.


FishMonger
Veteran / Moderator

Sep 22, 2016, 6:40 PM

Post #4 of 7 (3610 views)
Re: [WolfStock] Circular dependency - Windows [In reply to] Can't Post

That's a really old version of perl (circa 2004) and the main problem.

Your first step really should be to upgrade perl to a more reasonable version. If you don't want to do that, then you'll probably need to upgrade the modules manually via force install.

cpan> force install ExtUtils::MakeMaker


WolfStock
New User

Sep 23, 2016, 7:29 AM

Post #5 of 7 (3598 views)
Re: [FishMonger] Circular dependency - Windows [In reply to] Can't Post


In Reply To
That's a really old version of perl (circa 2004) and the main problem.

Your first step really should be to upgrade perl to a more reasonable version. If you don't want to do that, then you'll probably need to upgrade the modules manually via force install.

cpan> force install ExtUtils::MakeMaker


Thanks. Yeah I knew I was using an old version of perl; our IT doesn't do much in the way of perl support though, so I'll have to do some work to get the latest. (I'm generally using ActivePerl) Haven't had the time to yet, but hopefully can try it before long.

force install doesn't work, as it gives an error "install: missing file operand", as well as a few warnings that I'm sure are related to things being old.

The funny thing is when cpan gives errors it says "try this..." and when I do it says it doesn't know what the heck I'm talking about. E.g. it says "Try 'install --help' for more information.", but when I do that, it says "Cannot install --help, don't know what that is. Try the command 'i /--help/' to find objects with matching identifiers." But when I do "i /--help/" it says "No objects found of any type for argument /--help/." It appears there's a total mismatch between my help text versions and the cpan command line interpreter itself.


FishMonger
Veteran / Moderator

Sep 23, 2016, 7:49 AM

Post #6 of 7 (3595 views)
Re: [WolfStock] Circular dependency - Windows [In reply to] Can't Post

I would highly recommend installing Strawberry perl instead of ActiveState perl. Strawbeery perl comes with a compiler so you can build/install modules without having to rely on AS somewhat limited precompiled modules via ppm.

I started out years ago with ActiveState but always had problems with module installs so a few years ago I switched to Strawberry perl and almost never have any problems with installing modules. I will never go back to AcitveState.


WolfStock
New User

Sep 23, 2016, 1:41 PM

Post #7 of 7 (3587 views)
Re: [FishMonger] Circular dependency - Windows [In reply to] Can't Post

Thanks. That was going to be my next question - what version of perl would you recommend?

Smile

 
 


Search for (options) Powered by Gossamer Forum v.1.2.0

Web Applications & Managed Hosting Powered by Gossamer Threads
Visit our Mailing List Archives