【问题标题】:Error "Can't locate version.pm in @INC" when I call my DBI module当我调用我的 DBI 模块时出现错误“Can't locate version.pm in @INC”
【发布时间】:2012-08-02 11:36:17
【问题描述】:

我已经在我的计算机中安装了 DBI 和 DBD 模块,但是当我执行 perl 脚本时,出现“无法在 @INC 中定位 version.pm”之类的错误。我的 DBD 有问题吗?或者是否需要安装一些依赖项?

我的操作系统是Redhat Linux,perl 5.8.8版本,满足DBD安装要求。

这是@INC 包含的内容:

/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
/usr/lib64/perl5/site_perl/5.8.7/x86_64-linux-thread-multi
/usr/lib64/perl5/site_perl/5.8.6/x86_64-linux-thread-multi
/usr/lib64/perl5/site_perl/5.8.5/x86_64-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl/5.8.7
/usr/lib/perl5/site_perl/5.8.6
/usr/lib/perl5/site_perl/5.8.5
/usr/lib/perl5/site_perl
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi
/usr/lib64/perl5/vendor_perl/5.8.7/x86_64-linux-thread-multi
/usr/lib64/perl5/vendor_perl/5.8.6/x86_64-linux-thread-multi
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl/5.8.7
/usr/lib/perl5/vendor_perl/5.8.6
/usr/lib/perl5/vendor_perl/5.8.5
/usr/lib/perl5/vendor_perl
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
/usr/lib/perl5/5.8.8

locate version returns:
/opt/app/ora11g/product/11.2.0/client_1/perl/lib/5.10.0/version.pm

【问题讨论】:

标签: perl cpan


【解决方案1】:
corelist version

version was first released with perl v5.9.0

由于您的 perl 版本低于 perl5.9.0,您可能需要手动安装 version.pm

【讨论】:

  • 我的perl版本是5.8.8,哪个版本的version.pm适合安装?
  • 我猜你正在尝试手动安装模块。请使用cpancpanm 安装模块。安装最新版本:0.99
  • 我在使用 perl 5.16.3 的 EL7 上将 bugzilla 4.4.1 升级到 4.4.10 时遇到了同样的问题。为了纠正我跑的问题: yum -y install 'perl(version)' ,问题就消失了
【解决方案2】:

您的 Perl 安装似乎有问题。

version 自 Perl v5.9.0 以来一直是核心模块,仅被少数模块使用,不包括 DBI

哪个包因此错误而失败?该消息将告诉您哪个文件正在使用version。你可以不使用这个包,也可以安装更新版本的 Perl

【讨论】:

    猜你喜欢
    • 2018-06-08
    • 2017-02-07
    • 2015-03-19
    • 2011-01-17
    • 1970-01-01
    • 2021-12-09
    • 2016-12-14
    • 2013-06-13
    相关资源
    最近更新 更多