安装Perl DateTime

jwb*_*ley 3 perl perl-module

在为Perl安装DateTime时,我收到以下错误,但它失败了;

#   Failed test 'Make sure we can add 50 years worth of years in America/New_York time zone'
#   at t/30future-tz.t line 45.
Use of uninitialized value in numeric ge (>=) at /home/bensley/.cpan/build/DateTime-0.72/blib/lib/DateTime.pm line 138.

#   Failed test 'Make sure we can add 50 years worth of days in America/Chicago time zone'
#   at t/30future-tz.t line 45.
Use of uninitialized value in numeric ge (>=) at /home/bensley/.cpan/build/DateTime-0.72/blib/lib/DateTime.pm line 138.

#   Failed test 'Make sure we can add 50 years worth of minutes in America/Denver time zone'
#   at t/30future-tz.t line 45.
Use of uninitialized value in numeric ge (>=) at /home/bensley/.cpan/build/DateTime-0.72/blib/lib/DateTime.pm line 138.

#   Failed test 'Make sure we can add 50 years worth of seconds in America/Los_Angeles time zone'
#   at t/30future-tz.t line 45.
Use of uninitialized value in numeric ge (>=) at /home/bensley/.cpan/build/DateTime-0.72/blib/lib/DateTime.pm line 138.

#   Failed test 'Make sure we can add 50 years worth of nanoseconds in America/North_Dakota/Center time zone'
#   at t/30future-tz.t line 45.
Run Code Online (Sandbox Code Playgroud)

完整的输出很长,所以我把它贴在这里:http://pastebin.com/raw.php?i = JiJeH4ij

我是Perl模块的新手,因此完全迷失了.这里发生了什么?

更新:

$ perl --version

This is perl, v5.8.8 built for i486-linux-gnu-thread-multi

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 8.04.4 LTS
Release:    8.04
Codename:   hardy
Run Code Online (Sandbox Code Playgroud)

Sch*_*ern 9

这可能是你的问题.

Package seems to come without Makefile.PL.
  (The test -f "/home/bensley/.cpan/build/DateTime-0.72/Makefile.PL" returned false.)
  Writing one on our own (setting NAME to DateTime)
Run Code Online (Sandbox Code Playgroud)

您的CPAN客户端副本已过时,它无法识别"新"(我的意思是10年)Build.PL模块构建和安装机制.CPAN改为编写自己的安装程序并尝试进行安装.这适用于许多Perl模块,但它可能错过了DateTime所需的一些细微之处.

升级CPAN客户端,您可以使用CPAN客户端,然后再试一次.