安装CPAN模块ClearCase :: CtCmd

时间:2014-06-05 08:24:54

标签: perl cpan

我需要安装CPAN模块ClearCase::CtCmd。我已经下载了模块CtCmd-1.09。运行命令perl Makefile.PL后,我遇到以下错误:

perl Makefile.PL
Looking for ClearCase version   7       Found   7.1
Looking for gcc version 2.7     Found   3.4
Looking for SunOS       5.7     Found   5.8
Checking if your kit is complete...
Use of uninitialized value in chdir at /usr/local/lib/perl5/5.8.5/File/Find.pm line 741.
Use of chdir('') or chdir(undef) as chdir() is deprecated at /usr/local/lib/perl5/5.8.5/File/Find.pm line 741.
Looks good
Could not open 'CtCmd.pm': No such file or directory at /usr/local/lib/perl5/5.8.5/ExtUtils/MM_Unix.pm line 3079.

我提到perl版本是 v5.8.5。在INSTALL文件中声明" ClearCase::CtCmd模块需要Perl v5.6.1 v5.8 或更高版本。"

1 个答案:

答案 0 :(得分:0)

这是什么类型的机器?的Solaris? ClearCase是否附带自己的Perl版本,其中包含ClearCase::CtCmd

Use of uninitialized value in chdir at /usr/local/lib/perl5/5.8.5/File/Find.pm line 741.
Use of chdir('') or chdir(undef) as chdir() is deprecated at /usr/local/lib/perl5/5.8.5/File/Find.pm line 741.
Looks good

File::Find是标准的Perl模块。 chdir中的未初始化值不会看起来不错

Could not open 'CtCmd.pm': No such file or directory at /usr/local/lib/perl5/5.8.5/ExtUtils/MM_Unix.pm line 3079.

ExecUtils/MakeMaker正在调用ExtUtils/MM_Unix.pm,并且正在尝试编写您的Makefile。我有一种感觉,假设CtCmd.pm位于File::FindFile::Find失败,MakeMaker无法创建Makefile。

我正在查看Makefile.PL并看到它需要设置$ATRIA_ROOT,否则,它被推断为/opt/rational/clearcase。这可能与它有关吗?

没有。看起来不像。否则,您将无法获得有关ClearCase版本的报告。而且,我想系统是Solaris,因为这是唯一一个搜索gcc版本的地方。

我认为是时候在Makefile.PL计划中进行一些调整,看看它在做什么。我在第218行注意到WriteMakefile(%opts);我会添加一个小例程来打印出这个%opts子例程(可能使用warn而不是print)。这个子程序来自ExtUtils::MakeFile,它实际上写了Makefile。它可能会为您提供正在发生的事情的线索。

不幸的是,问题看起来与ExtUtils::MakeMaker的工作方式有关。使用Perl 5.8.5意味着您拥有ExtUtils::MakeMaker的较旧版本。您可以查看ExtUtils::MakeMaker的发行说明,看看是否能为您提供任何线索。不再支持Perl 5.8.5。这是Perl非常非常老的版本。