delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/02/16/14:00:45

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=BAYES_00,SARE_MSGID_LONG40,SPF_PASS
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
Date: Tue, 16 Feb 2010 10:00:33 -0900
Message-ID: <b56922971002161100y70dac2ednfa83f201eb02fe58@mail.gmail.com>
Subject: Workaround for installing Perl module DateTime::Locale
From: Nathan Vonnahme <nvonnahme AT gmail DOT com>
To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

So, I recently upgraded my Cygwin setup, and broke a Perl script I use
which uses a lot of CPAN modules.   Here are the relevant version
details:

setup.exe version 2.682
This is perl, v5.10.1 (*) built for i686-cygwin-thread-multi-64int
/usr/bin/cpan script version 1.9, CPAN.pm version 1.9402

The errors were coming from DateTime::Locale, so I tried reinstalling
it with CPAN, and it failed its tests with errors like these:


Use of uninitialized value $id in pattern match (m//) at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 65.
Use of uninitialized value $id in exists at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 68.
Use of uninitialized value $native_pieces[0] in join or string at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 83.
Use of uninitialized value $id in hash element at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 85.
Use of uninitialized value $id in hash element at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 90.
Use of uninitialized value $id in pattern match (m//) at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 65.
Use of uninitialized value $id in exists at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 68.
Use of uninitialized value $id in concatenation (.) or string at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 68.
You cannot replace an existing locale ('') unless you also specify the
'replace' parameter as true
BEGIN failed--compilation aborted at
/cygdrive/d/src/.cpan/build/DateTime-Locale-0.44-mPUCHD/blib/lib/DateTime/Locale.pm
line 151.

I saw the same errors going back several versions in the historical
cygwin results at
http://matrix.cpantesters.org/?dist=DateTime-Locale+0.44 , for
example, http://www.cpantesters.org/cpan/report/5378340 -- so they
have been an issue for at least some Cygwin users with different Perl
releases.

I got the module to build, test and install cleanly by running the
dos2unix command on all the *.pm files.  So it's a line-ending
thing... I don't know how or why it would be unpacking them with DOS
endings, but I wanted to report the workaround.  Maybe it's related to
multibyte .pm files?

I also don't know where the underlying cause or solution would be.  Is
there something in Cygwin that should behave differently?  Perl?
Cpan?  The module itself?

Cheers,
nathan

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019