Closed Bug 486840 Opened 15 years ago Closed 15 years ago

checksetup.pl runs ok, but Apache reports "Can't locate Date/Parse.pm in @INC (@INC contains: . lib /usr/perl5/5.8.4/lib/sun4-solaris-64int etc"

Categories

(Bugzilla :: Installation & Upgrading, defect)

3.2.2
Sun
Solaris
defect
Not set
critical

Tracking

()

RESOLVED INVALID

People

(Reporter: david.kirkby, Unassigned)

References

()

Details

User-Agent:       Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.8.1.14) Gecko/20080520 Firefox/2.0.0.14
Build Identifier: bugzilla-3.2.2

I've installed perl, v5.8.4 (built from source IIRC), installed my MySQL v5.1.32 (downloaded binary from mysql.com) and added most of the perl modules suggested. PerlMagick would not install as it suffers a a GNUism (uses Sun's compiler, but uses -Wall, which is a gcc specific flag). In any case, PerlMagick is not mandatory, so I skipped that. 

I've set up the database and run the test script. That appears to run ok - see output at the very end of the here. 

However, while Apache loads the cgi script, it reports a failure. 

----------------------------------------------
Software error:

Can't locate Date/Parse.pm in @INC (@INC contains: . lib /usr/perl5/5.8.4/lib/sun4-solaris-64int /usr/perl5/5.8.4/lib /usr/perl5/site_perl/5.8.4/sun4-solaris-64int /usr/perl5/site_perl/5.8.4 /usr/perl5/site_perl /usr/perl5/vendor_perl/5.8.4/sun4-solaris-64int /usr/perl5/vendor_perl/5.8.4 /usr/perl5/vendor_perl) at Bugzilla/Util.pm line 51.
BEGIN failed--compilation aborted at Bugzilla/Util.pm line 51.
Compilation failed in require at Bugzilla/Error.pm line 33.
BEGIN failed--compilation aborted at Bugzilla/Error.pm line 33.
Compilation failed in require at Bugzilla/Auth.pm line 34.
BEGIN failed--compilation aborted at Bugzilla/Auth.pm line 34.
Compilation failed in require at Bugzilla.pm line 40.
BEGIN failed--compilation aborted at Bugzilla.pm line 40.
Compilation failed in require at /usr/local/apache2/htdocs/g8wrb/bugzilla-3.2.2/index.cgi line 34.
BEGIN failed--compilation aborted at /usr/local/apache2/htdocs/g8wrb/bugzilla-3.2.2/index.cgi line 34.

For help, please send mail to the webmaster (xxxx@yyy.com), giving this error message and the time and date of the error. 
-------------------------------------------------------

I assumed that Bugzilla needed the perl modules 'Date::Parse' but the checksetup.pl did not check for it. So I thought I would install that. 

# perl -MCPAN -e 'install Date::Parse'
CPAN: Storable loaded ok
Going to read /.cpan/Metadata
  Database was generated on Sat, 04 Apr 2009 08:27:39 GMT
Date::Parse is up to date.


As you can see, Date::Parse is installed, but 'enter_bug.cgi' cant find it. 


# ./checksetup.pl
* This is Bugzilla 3.2.2 on perl 5.8.4
* Running on SunOS 5.10 Generic_120011-14

Checking perl modules...
Checking for              CGI.pm (v3.21)   ok: found v3.42
Checking for            TimeDate (v2.21)   ok: found v2.22
Checking for           PathTools (v0.84)   ok: found v3.29
Checking for                 DBI (v1.41)   ok: found v1.607
Checking for    Template-Toolkit (v2.15)   ok: found v2.20
Checking for          Email-Send (v2.00)   ok: found v2.194
Argument "1.99_01" isn't numeric in subroutine entry at /usr/perl5/site_perl/5.8.4/Email/MIME/Header.pm line 8.
Checking for          Email-MIME (v1.861)  ok: found v1.863
Checking for Email-MIME-Modifier (v1.442)  ok: found v1.443

Checking available perl DBD modules...
Checking for              DBD-Pg (v1.45)    not found
Checking for           DBD-mysql (v4.00)   ok: found v4.010
Checking for          DBD-Oracle (v1.19)    not found

The following Perl modules are optional:
Checking for                  GD (v1.20)   ok: found v2.41
Checking for               Chart (v1.0)    ok: found v2.4.1
Checking for         Template-GD (any)     ok: found v1.56
Checking for          GDTextUtil (any)     ok: found v0.86
Checking for             GDGraph (any)     ok: found v1.44
Checking for            XML-Twig (any)     ok: found v3.32
Checking for          MIME-tools (v5.406)  ok: found v5.427
Checking for         libwww-perl (any)     ok: found v5.824
Checking for         PatchReader (v0.9.4)  ok: found v0.9.5
Checking for          PerlMagick (any)      not found
Checking for           perl-ldap (any)      not found
Checking for         Authen-SASL (any)      not found
Checking for          RadiusPerl (any)     ok: found v0.13
Checking for           SOAP-Lite (any)     ok: found v0.710.08
Checking for         HTML-Parser (v3.40)   ok: found v3.60
Checking for       HTML-Scrubber (any)     ok: found v0.08
Checking for Email-MIME-Attachment-Stripper (any)     ok: found v1.316
Checking for         Email-Reply (any)     ok: found v1.202
Checking for            mod_perl (v1.999022)  not found
**********************************************************************
* OPTIONAL MODULES                                                   *
**********************************************************************
* Certain Perl modules are not required by Bugzilla, but by          *
* installing the latest version you gain access to additional        *
* features.                                                          *
*                                                                    *
* The optional modules you do not have installed are listed below,   *
* with the name of the feature they enable. If you want to install   *
* one of these modules, just run the appropriate command in the      *
* "COMMANDS TO INSTALL" section.                                     *
**********************************************************************

***********************************************************************
* MODULE NAME * ENABLES FEATURE(S)                                    *
***********************************************************************
*  PerlMagick * Optionally Convert BMP Attachments to PNGs            *
*   perl-ldap * LDAP Authentication                                   *
* Authen-SASL * SMTP Authentication                                   *
*    mod_perl * mod_perl                                              *
***********************************************************************
COMMANDS TO INSTALL:

     PerlMagick: /usr/bin/perl install-module.pl Image::Magick
      perl-ldap: /usr/bin/perl install-module.pl Net::LDAP
    Authen-SASL: /usr/bin/perl install-module.pl Authen::SASL
       mod_perl: /usr/bin/perl install-module.pl mod_perl2

To attempt an automatic install of every required and optional module
with one command, do:

  /usr/bin/perl install-module.pl --all

Reading ./localconfig...

OPTIONAL NOTE: If you want to be able to use the 'difference between two
patches' feature of Bugzilla (which requires the PatchReader Perl module
as well), you should install patchutils from:

    http://cyberelk.net/tim/patchutils/

Checking for           DBD-mysql (v4.00)   ok: found v4.010
Checking for           MySQL (v4.1.2)  ok: found v5.1.32-log

Removing existing compiled templates...
Precompiling templates...done.
Fixing file permissions...

Now that you have installed Bugzilla, you should visit the
'Parameters' page (linked in the footer of the Administrator
account) to ensure it is set up as you wish - this includes
setting the 'urlbase' option to the correct URL.




Reproducible: Always

Steps to Reproduce:
1. Install Bugzilla
2. Try to run it. 

I've pretty much described this above, so no need to elaborate. 
Actual Results:  
Software error:

Can't locate Date/Parse.pm in @INC (@INC contains: . lib /usr/perl5/5.8.4/lib/sun4-solaris-64int /usr/perl5/5.8.4/lib /usr/perl5/site_perl/5.8.4/sun4-solaris-64int /usr/perl5/site_perl/5.8.4 /usr/perl5/site_perl /usr/perl5/vendor_perl/5.8.4/sun4-solaris-64int /usr/perl5/vendor_perl/5.8.4 /usr/perl5/vendor_perl) at Bugzilla/Util.pm line 51.
BEGIN failed--compilation aborted at Bugzilla/Util.pm line 51.
Compilation failed in require at Bugzilla/Error.pm line 33.
BEGIN failed--compilation aborted at Bugzilla/Error.pm line 33.
Compilation failed in require at Bugzilla/Auth.pm line 34.
BEGIN failed--compilation aborted at Bugzilla/Auth.pm line 34.
Compilation failed in require at Bugzilla.pm line 40.
BEGIN failed--compilation aborted at Bugzilla.pm line 40.
Compilation failed in require at /usr/local/apache2/htdocs/g8wrb/bugzilla-3.2.2/index.cgi line 34.
BEGIN failed--compilation aborted at /usr/local/apache2/htdocs/g8wrb/bugzilla-3.2.2/index.cgi line 34.

For help, please send mail to the webmaster (xxxx@yyy.com), giving this error message and the time and date of the error. 

Expected Results:  
I assume there would be some sort of admin page, of some sort, rather than a list of error messages. 

Hardware is a Sun Ultra 60, running Solaris 10 update 6.  

# uname -a
SunOS main-webserver 5.10 Generic_120011-14 sun4u sparc SUNW,Ultra-60


# cat /etc/release
                       Solaris 10 8/07 s10s_u4wos_12b SPARC
           Copyright 2007 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                            Assembled 16 August 2007

# mysql -V
mysql  Ver 14.14 Distrib 5.1.32, for sun-solaris2.10 (sparc) using readline 5.1

# which perl
/usr/bin/perl

# perl -v
This is perl, v5.8.4 built for sun4-solaris-64int
Version: unspecified → 3.2.2
Severity: normal → critical
You may notice above a report from the check script about something not being numeric:


Checking for          Email-Send (v2.00)   ok: found v2.194
Argument "1.99_01" isn't numeric in subroutine entry at
/usr/perl5/site_perl/5.8.4/Email/MIME/Header.pm line 8.
Checking for          Email-MIME (v1.861)  ok: found v1.863


Well, I don't know where it gets this from, but line 8 of /usr/perl5/site_perl/5.8.4/Email/MIME/Header.pm has this entry:


use Encode 1.9801;

1.9801 looks pretty numeric to me, and it's hard to see a relationship between that and 1.99_01. (Check carefully, the numbers don't agree)
Looks like TimeDate isn't installed correctly. It's the Perl package which contains Date::Format, see http://search.cpan.org/~gbarr/TimeDate-1.16/lib/Date/Parse.pm
Status: UNCONFIRMED → RESOLVED
Closed: 15 years ago
Resolution: --- → INVALID
Well, the file Date/Parse.pm does exist in one of the directories indicated. 

According to the Bugzilla errror message, @INC includes /usr/perl5/site_perl/5.8.4

The file Date/Perse.pm *does* exist there. 

It appears to be the one you pointed me too, which is by Graham Barr, as the copyright at the top of the file shows his name too:

# ls -l /usr/perl5/site_perl/5.8.4/Date/Parse.pm
-r--r--r--   1 root     root        8859 Jun  3  2003 /usr/perl5/site_perl/5.8.4/Date/Parse.pm

# head /usr/perl5/site_perl/5.8.4/Date/Parse.pm
# Date::Parse $Id: //depot/TimeDate/lib/Date/Parse.pm#22 $
#
# Copyright (c) 1995 Graham Barr. All rights reserved. This program is free
# software; you can redistribute it and/or modify it under the same terms
# as Perl itself.

package Date::Parse;

require 5.000;
use strict;
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
A small perl program I wrote, using time2str(), seems to work too. 

# cat test.pl
#! /usr/bin/perl -w
use Date::Format;
print time2str("%Y-%m-%d %T", $^T )."\n";


# ./test.pl
2009-04-04 23:36:26
This is not actually a bug in Bugzilla, but simply a configuration problem. Support for Bugzilla can be gotten using the various resources listed here:

  http://www.bugzilla.org/support/
Status: UNCONFIRMED → RESOLVED
Closed: 15 years ago15 years ago
Resolution: --- → INVALID
I'll look at http://www.bugzilla.org/support/

Personally, I would have thought as there is a script (./checksetup.pl) which checks the setup, it should detect this.
It sounds like the problem I had this week for which I've suggested an additional paragraph in the documentation.

https://bugzilla.mozilla.org/show_bug.cgi?id=510689
You need to log in before you can comment on or make changes to this bug.