2011-10-09 15 views
8

Sto tentando di installare Bugzilla sul mio server Centos. ma ho ottenuto questo errore:Perl DateTime :: TimeZone non trovato (installazione Bugzilla)

Checking for DateTime-TimeZone (v0.71) not found 

e

COMMANDS TO INSTALL REQUIRED MODULES (You *must* run all these commands 
    and then re-run this script): 
    /usr/bin/perl install-module.pl DateTime::TimeZone 

Se corro: /usr/bin/perl install-module.pl DateTime::TimeZone

tanto sono questo:

CPAN: Storable loaded ok (v2.15)Reading '/root/.cpan/Metadata' 
    Database was generated on Sun, 09 Oct 2011 17:27:24 GMT 
    Installing DateTime::TimeZone version 1.39... 
    CPAN: Module::CoreList loaded ok (v2.56) 
    DateTime::TimeZone is up to date (1.39). 

Come posso risolvere questo problema?

+0

quindi qual è l'errore effettivo? – Alnitak

+3

IMHO, questo è un errore in Bugzilla, nel confronto delle versioni. Segnalalo al bug tracker di Bugzilla. –

+1

Sono d'accordo con Alexandr. Bugzilla sta cercando la versione 0.71, ma hai installato la versione 1.39 (che è un bel salto nel versioning). Stavo cercando di capire come è fatto questo controllo. Potrebbe essere alla ricerca di una versione uguale o superiore, una corrispondenza esatta, o forse qualcosa con una versione maggiore simile. Ho provato a passare attraverso la logica, ma non volevo spendere così tanto tempo su questo problema. Se non sei bloccato su Bugzilla, potresti provare [MantisBT] (http://www.mantisbt.org/).Mantis è stato specificamente progettato per sostituire Bugzilla con un sistema più facile da configurare. –

risposta

0

avrei immagino si è installato DateTime-TimeZone con il proprio account utente che non è accessibile al server Web o l' conto 'root'. Prova semplicemente l'installazione tramite il gestore dei pacchetti:

yum install 'perl(DateTime::TimeZone)' 
9

Avevo lo stesso problema durante l'aggiornamento. Il modulo DateTime :: TimeZone sembrava essere installato ma lo script Bugzilla checksetup.pl riportava sempre che non era stato trovato. Il seguente risolto il problema per me (eseguito dalla dir Bugzilla installazione):

$ perl install-module.pl Params::Util 
$ perl install-module.pl Module::Runtime 

Ho trovato questo scrivendo uno script perl due linee per simulare il controllo di fatto da Bugzilla:

use lib qw(. lib); 
use DateTime::TimeZone; 

e poi esecuzione per vedere gli errori:

perl /tmp/foo.pl 

Dopo l'installazione dei moduli sopra lo script foo.pl passa e così fa Bugzilla checksetup.pl.

+0

Il secondo comando, perl install-module.pl Modulo :: Runtime, lo ha fatto per me. Questo è per Bugzilla 4.2.3! Non è stato menzionato come opzionale/richiesto in ogni caso, penso, ma ignora il requisito della zona DateTime anche se ho già installato quel modulo. – Shiroi98

+0

Per me, il modulo mancante aveva a che fare con YAML. L'esecuzione dello script perl install-module.pl era decisamente la scelta giusta (al contrario di eseguire yum install o cpan direttamente). –

0

Ho riscontrato anche questo problema. Non sono sicuro del motivo per cui non trovi TimeZone.

Ho scavato brevemente nel codice e ho provato a cambiare i numeri di versione di TimeZone per farlo funzionare, ma dice sempre "non trovato".

Eventualmente, ho appena commentato le linee in cui si stava cercando di fare il controllo. Mi ha quindi permesso di installare. (Aggiungi hash all'inizio di ogni riga)

# { 
#  package => 'DateTime-TimeZone', 
#  module => 'DateTime::TimeZone', 
#  version => ON_WINDOWS ? '0.79' : '0.71' 
# }, 

Questo sembra un bug in Bugzilla. Suggerisco di segnalarlo.

1

Ho lo stesso problema e la soluzione data in this link

Something like /usr/bin/perl install-module.pl Module::Build may be enough, although I would have thought that Module::Bundle is standard perl

Problemi correlati