2

我正在尝试运行 bioperl-live 包,并且我已经 git 克隆了以下 repo

git clone https://github.com/bioperl/bioperl-live.git

并 cd 到 bio-perl live 的安装位置。然后我尝试运行:

perl Build.PL

我回来了:

Checking prerequisites...
  build_requires:
    !  Test::Most is not installed

所以我打开了一个 cpan shell,当我从 cpan 运行时:

cpan>install Test::Most

并重复构建我得到同样的错误。有人介意克隆上面的 git repo(如果你想检查自己,可以在https://github.com/bioperl/bioperl-live找到),如果你遇到同样的问题,请告诉我。

请注意,其他包中的其他 Build.PL 文件不会发生这种情况 - 它运行良好。那个 git repo 中一定有一些损坏/丢失的东西。

谢谢

更新 - 当我运行 perl -wle 'use Test::Most'

我得到:

无法在 @INC 中找到 Test/Most.pm(@INC 包含:/home/arron/src/bioperl-live /etc/perl /usr/local/lib/perl/5.12.4 /usr/local/share/ perl/5.12.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.12 /usr/share/perl/5.12 /usr/local/lib/site_perl .) at -e line 1. BEGIN failed——编译在 -e line 1 处中止。enter code here

还将 cpan 配置为以 root 身份安装,然后安装 Test::Most 没有区别。这么大惊小怪!

4

1 回答 1

1

我怀疑这是 bioperl 的问题。您使用的命令更有可能cpan不是为perl您用于运行Build.PL. 所以 Test::Most 正在安装,但不是为您的 perl 安装的。您可以确认 Test::Most 是否安装了perl -wle 'use Test::Most'.

检查which cpanwhich perl。它们应该具有相同的根路径。IE。/usr/bin/cpan/usr/bin/perl

一种可能性是您正在跑步sudo cpan,但只是perl Build.PL. sudo可能正在改变你的PATH,从而拿起一个不同cpan的和不同的perl。如果你正在做sudo cpan一定要做sudo which cpan

! print "$^X\n"您可以通过在 cpan 提示符 下键入来检查正在安装的 perl cpan 。!告诉 cpan 执行任意 perl 代码。 $^X是一个保存 perl 路径的变量。这是一个为正确的 perl 安装 cpan 的示例。

$ cpan

cpan shell -- CPAN exploration and modules installation (v1.9800)
Enter 'h' for help.

cpan[1]> ! print "$^X\n"
/Users/schwern/perl5/perlbrew/perls/perl-5.16.2-threads/bin/perl
cpan[1]> q

$ which perl
/Users/schwern/perl5/perlbrew/perls/perl-5.16.2-threads/bin/perl

此外,您应该避免以 root 身份运行 cpan ,而是将 CPAN 配置为以 root 身份安装。您可能需sudo chown yourusername -R ~/.cpan要这样做,因为 root 可能拥有您的.cpan目录。

于 2013-04-24T17:47:40.240 回答