http://www.perlmonks.org?node_id=1034060

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

Dear esteemed PerlMonks

After a long struggle, I gave up fixing Alien::wxWidgets 2.9.4 installation on StrawberryPerl 5.16.31, and instead downloaded and installed Citrus Perl2. I changed system and user path to point to the Citrus Perl installation.3

But now, I need to install again several modules.

When using CPANPLUS trying to install DateTime, I'm getting errors: see (abridged) log:

CPAN Terminal> i DateTime [MSG] Checking if source files are up to date. Installing DateTime (1. +03) [MSG] Trying to get 'http://cpan.strawberryperl.com/authors/id/D/DR/DR +OLSKY/CHECKSUMS' [MSG] Checksum matches for 'DateTime-1.03.tar.gz' [MSG] Extracted 'DateTime-1.03/' ... ... [MSG] Extracted 'DateTime-1.03/TODO' [MSG] Extracted 'DateTime' to 'F:\Win7programs\Dwimperl\cpanplus\5.16. +3\build\DateTime-1.03' Could not find or check module 'Module::Signature' [THIS MAY BE A PROB +LEM!] at F:/Win7programs/Citrus/perl/lib/CPANPLUS/Module/Signature.pm + line 51. Running [F:\Win7programs\Citrus\perl\bin\perl.exe -e use strict; BEGIN + { my $old = select STDERR; $|++; select $old; $|++; $0 = shift(@ARGV); my $rv = + do($0); die $@ if $@; } F:\Win7programs\Dwimperl\cpanplus\5.16.3\bui +ld\DateTime-1.03\Build.PL --uninst 1]... Warning: ExtUtils::CBuilder not installed or no compiler detected Proceeding with configuration, but compilation may fail during Build Checking prerequisites... requires: ! DateTime::Locale is not installed ! DateTime::TimeZone is not installed ! Params::Validate is not installed test_requires: ! Test::Fatal is not installed ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the v +ersions of the modules indicated above before proceeding with this installatio +n Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'DateTime' version '1.03' [MSG] Module 'DateTime' requires 'DateTime::Locale' version '0.41' to +be installed [MSG] Module 'DateTime' requires 'DateTime::TimeZone' version '1.09' t +o be installed [MSG] Module 'DateTime' requires 'Params::Validate' version '0.76' to +be installed [MSG] Module 'DateTime' requires 'Test::Fatal' version '0' to be insta +lled [ERROR] Module 'DateTime' needs perl version '5.008001', but you only +have version '5.16.3' -- can not proceed [ERROR] Unable to satisfy prerequisites for 'DateTime' -- aborting ins +tall [ERROR] Unable to create a new distribution object for 'DateTime' -- c +annot continue Error installing 'DateTime'

Update:  Solved. See this post below: perlmonks.org/?node_id=1034103

The three main problems I see here are (quoting from log above):

  1. Could not find or check module 'Module::Signature' [THIS MAY BE A PROBLEM!] at F:/Win7programs/Citrus/perl/lib/CPANPLUS/Module/Signature.pm line 51;
  2. Warning: ExtUtils::CBuilder not installed or no compiler detected
    and:
  3. [ERROR] Module 'DateTime' needs perl version '5.008001', but you only have version '5.16.3' -- can not proceed
I am getting similar errors trying to install some other modules.

What to do?

Many TIA - Helen

(running on Windows 7 64 bit, Wx version 0.9921, wxWidgets version 2.9.4)

______________________________________________________
1 (Big disappointment. Experts advice didn't help, although implementing all their suggestions, I kept getting a perl.exe crash in: wxbase294u_gcc_custom.dll, see here: perlmonks.org/?node_id=1033560)
2 I've "relocated" the Citrus Perl installation according to the documentation, and used the utility to: a. install the MinGW compiler and b. update to wxWidgets 2.9.4
3 Having several Perl installations is perfectly "legal" and covered by documentation. (For example, see here: perlmonks.org/?node_id=1033038)

Replies are listed 'Best First'.
Re: Citrus Perl: problems trying to load additional modules
by stefbv (Curate) on May 18, 2013 at 08:26 UTC

    Remove Citrus Perl from the path and use bin/citrusterm.bat to open a terminal.

    Yes, 'Having several Perl installations is perfectly "legal"', but you have to keep their environment separated. Can't mix DWIM Perl with Citrus Perl.

    I have Citrus Perl 5.14 and 5.16 on my box and a shortcut on the desktop from each bin/citrusterm.bat script for opening a terminal and installing modules.

    I use this script, inspired from citrusterm.bat, for the application shortcut (for the 5.14):

    @echo off call C:\dev\Tpda3FpimmPerl\bin\citrusvars.bat Title Tpda3 ( CitrusPerl 5.14.2.1 x86 ) tpda3.bat %*

    And Tpda3FpimmPerl is a custom Citrus Perl distribution with all my app modules installed.

    Regards, Stefan

      Remove Citrus Perl from the path and use bin/citrusterm.bat to open a terminal.

      Um, no :) start+run+pathtocitrusterm.bat ought to work just fine

        For Citrus Perl, but won't interfere with DWIM Perl?

Re: Citrus Perl: problems trying to load additional modules
by syphilis (Archbishop) on May 18, 2013 at 09:07 UTC
    I'm a bit puzzled that no attempt was made to install the missing pre-requisites.
    My cpan configuration is certainly set up to install missing pre-requisites ... but I don't use CPAN.pm (or its siblings) very often, so maybe this is just a case of me opening my mouth when I should've kept it closed :-)

    Cheers,
    Rob

      I'm a bit puzzled that no attempt was made to install the missing pre-requisites. ... so maybe this is just a case of me opening my mouth when I should've kept it closed :-)

      It could be that its a configurable configuration option that you can configure in one of four ways :)

      or it could be that trying to debug mystery antique versions through pulling teeth is kind of boring :)

Re: Citrus Perl: problems trying to load additional modules
by Anneq (Vicar) on May 18, 2013 at 13:40 UTC

    Try this:

    $ cpan cpan>look DateTime [/path/to/the/cpan/Module-build-directory]#

    Copy the path to the Module build directory (the text between the square brackets). Then:

    [/path/to/the/cpan/Module-build-directory]# exit cpan> exit $ cd /path/to/the/cpan/Module-build-directory $ perl Makefile.PL $ make $ make test $ make install

    Are you running CPANPLUS as Administrator or as a regular user?

    Anne

      stefbv, syphilis, Anne and AM: Thank you for you time and interest. Your posts helped a lot.

      Here is how I got it solved: although CPANPLUS version was not that far back-dated, I decided to try to update it to the latest (0.9136). It's not simple to update it, so I used this incantation:

      cpan -fi BINGOS/CPANPLUS-0.9136.tar.gz

      as Khen1950fx suggested here: perlmonks.org/?node_id=1031040.
      This got installed with no problems; I then went: cpanp (invoked CPANPLUS) and entered: i DateTime. It asked me about required dependencies, I answered [3] (Yes to all).

      Turned out that wasn't such a good decision, since it got stuck for more than an hour in trying to install DateTime::TimeZone.
      I noticed it was eating up 13% of joint cpu power ( which is quite a lot - the PC is quite powerful, 8-core i7 processor).

      I Googled a bit and realized it got into a "required dependency loop". I killed the perl.exe process (had to, since it ignored Ctrl-C), and installed the required dependencies manually.

      So all looks fine right now.

      Many thanks to all who chipped-in for help - Helen

      NB for the benefit of the PerlMonks community: some "lessons learned":

      1. It is possible (and documented) to run several Perl installations on your system. You have to manage the PATH carefully though (either manually or, if you have Citrus Perl, using the citrusvars.bat utility)
      2. CPANPLUS works fine in a multi-installation environment - in fact, it's by design. It creates a "module archive tree" with entries for each Perl version it finds.

Re: Citrus Perl: problems trying to load additional modules
by Anonymous Monk on May 18, 2013 at 08:23 UTC

    Ok, back to business, verify your perl path/version from within the cpanplus shell, and dump your cpanplus configuration and version information, that would be my step one


    The three main problems I see here are (quoting from log above):

    And what have you tried to resolve these problems you perceive?

    How about you try some of the tips/tricks you've been provided with so far?

    Do you remember what these tips/tricks are (hint, stuff I suggested)?

    What to do?

    I don't remember if I've suggested it before, but think about giving up , seriously :|

    Locate a live human with experience in these issue , then using whatever means necessary persuade said human to walk to your computer and set it up and resolve everything for you

    You know why I suggest this? Because Win7programs/Dwimperl/cpanplus seems kind of odd for an citrusperl installation

    That combined with this error message Module 'DateTime' needs perl version '5.008001', but you only have version '5.16.3' -- can not proceed also suggests you're running some antique CPANPLUS version, something from 2010