0

Ubuntu is installed for development of a Perl project.

aptitude search Geo-Coder
i   libgeo-coder-googlev3-perl      - Perl module providing access to Google Map

Aptitude does not refer to Geo::Coder::Many

cpan can not build it.

sudo cpan Geo::Coder::Many

Then:

CPAN: Storable loaded ok (v2.27) Going to read '/home/jh/.cpan/Metadata' Database was generated on Wed, 16 Oct 2013 06:17:04 GMT Running install for module 'Geo::Coder::Many' Running make for K/KA/KAORU/Geo-Coder-Many-0.42.tar.gz CPAN: Digest::SHA loaded ok (v5.61) CPAN: Compress::Zlib loaded ok (v2.033) Checksum for /home/jh/.cpan/sources/authors/id/K/KA/KAORU/Geo-Coder-Many-0.42.tar.gz ok CPAN: File::Temp loaded ok (v0.22) CPAN: Parse::CPAN::Meta loaded ok (v1.4401) CPAN: CPAN::Meta loaded ok (v2.110440) CPAN: Module::CoreList loaded ok (v2.49_02) CPAN: Module::Build loaded ok (v0.38)

CPAN.pm: Going to build K/KA/KAORU/Geo-Coder-Many-0.42.tar.gz

Can't locate Geo/Coder/Many/Google.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /usr/share/perl/5.14/Module/Load.pm line 27. Can't locate Geo/Coder/Many/Google in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /usr/share/perl/5.14/Module/Load.pm line 27. BEGIN failed--compilation aborted at Build.PL line 54. Warning: No success on command[/usr/bin/perl Build.PL --installdirs site] CPAN: YAML loaded ok (v0.77) KAORU/Geo-Coder-Many-0.42.tar.gz /usr/bin/perl Build.PL --installdirs site -- NOT OK Running Build test Make had some problems, won't test Running Build install Make had some problems, won't install Could not read metadata file. Falling back to other methods to determine prerequisites

Any suggestions how to resolve this issue?

1 Answer 1

2

CPAN.pm: Going to build K/KA/KAORU/Geo-Coder-Many-0.42.tar.gz

Can't locate Geo/Coder/Many/Google.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /usr/share/perl/5.14/Module/Load.pm line 27. Can't locate ...

Geo::Coder::Many::Google is a plugin that comes bundled with Geo::Coder::Many to translate between Geo::Coder::Google and Geo::Coder::Many. As you can see from this URL:

https://metacpan.org/source/KAORU/Geo-Coder-Many-0.42/lib/Geo/Coder/Many/Google.pm

(Note that Geo/Coder/Many/Google.pm belongs to the Geo-Coder-Many 0.42 package.)

This implies that during the 'make test' your environment was not correctly configured to include the packages' own modules in the @INC or $PERL5LIB during the test. Which is weird because that should definitely be the default.


To go a bit more general:

Geo::Coder::Many attempts to dynamically generated its dependency list based on what Geo::Coder::* modules you have installed. It's worth noting that Geo::Coder::Google and Geo::Coder::Googlev3 are different modules - specifically Geo::Coder::Google is used for version 2 of Google's Geocoder API.

This means that the first part of your question is not entirely relevant. It's not failing on Google v3 support, it's failing on Google v2 support, which you must also have installed.


I suggest trying to:

sudo cpan App::cpanminus
sudo cpanm --sudo --prompt Geo::Coder::Many

Then, assuming it fails again, use the prompt option to "Inspect" the build directory and try running 'make test' or './Build test' yourself... or alternatively use 'prove --blib' to test specific .t files that are relevant to your needs. If things work to your satisfaction you can drop out of the Inspect with 'exit' and then force the install through.

1
  • thanks for this answer. yes, Geo::Coder::Google and Geo::Coder::Googlev3 was another issue last week and that's already solved.
    – mnemonic
    Oct 21, 2013 at 9:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .