[OSM-dev] [OT] installing CPAN modules on dev

Nick Hill nick at nickhill.co.uk
Thu Nov 9 15:51:39 GMT 2006


Hello Joerg

I have thrown all the modules at cpan installer.

I end up with
Recursive dependency detected:
     Bit::Vector
  => S/ST/STBEY/Bit-Vector-6.4.tar.gz
  => Carp::Clan
  => J/JJ/JJORE/Carp-Clan-5.8.tar.gz
  => Object::Deadly
  => J/JJ/JJORE/Object-Deadly-0.09.tar.gz
  => Carp::Clan.
Cannot continue.

However,
cpan> install Bit::Vector
Bit::Vector is up to date.

cpan> install Carp::Clan
Carp::Clan is up to date.

cpan> install Object::Deadly
Object::Deadly is up to date.

cpan> install Carp::Clan
Carp::Clan is up to date.

each gives recursive dependency error similar to:

Recursive dependency detected:
     Carp::Clan
  => J/JJ/JJORE/Carp-Clan-5.8.tar.gz
  => Object::Deadly
  => J/JJ/JJORE/Object-Deadly-0.09.tar.gz
  => Carp::Clan.
Cannot continue.




Joerg Ostertag (OSM Munich/Germany) wrote:
> On Thursday 09 November 2006 10:45, Nick Whitelegg wrote:
>>> CPAN modules sometimes don't have their prerequisites defined too
>>> well. If you get a message about failing tests, try scrolling back up
>>> the history, see if it's looking for a module that isn't there,
>>> install that, and try again. (Even a well-known module like LWP
>>> suffers from this.)
>> Sounds like dependency hell :-(
>>
>>> Bit::Vector, though, simply wouldn't pass one of the tests on my Mac
>>> (OS 10.3) no matter what I tried. Eventually I did a force install and
>>> it seems to be happy.
>> OK I'll try that. But the planet-excerpt.osm script needs some other stuff
>> like HTTP::Request too (why exactly, I'm not sure) so it may just be
>> easier to ask Nick H to just do an apt-get after all....
> 
> For finding the needed Modules I tried the following:
> tweety at moby:~/svn.openstreetmap.org$ grep "^use .*;" -rh utils/ | sed 's/ 
> qw.*;/;/' | sort -u | grep -v -e 'Geo' -e ' Utils' -e constant
> use Bit::Vector;
> use Carp;
> use Data::Dumper;
> use Date::Manip;
> use Date::Parse;
> use DBI;
> use File::Basename;
> use File::Copy;
> use File::Path;
> use File::Slurp;
> use GDBM_File;
> use Getopt::Long;
> use HTTP::Request;
> use IO::File;
> use IO::Socket::INET;
> use LWP::Simple;
> use LWP::UserAgent;
> use Math::Trig;
> use osm;
> use OsmXML;
> use PDF::API2;
> use Pod::Usage;
> use POSIX;
> use Storable;
> use Time::Local;
> use Tk;
> use Tk::Image;
> use Tk::Label;
> use Tk::Menu;
> use Tk::Pane;
> use WWW::Curl::easy;
> use XML::Parser;
> use XML::Simple;
> 
> 




More information about the dev mailing list