Установить CPAN модуль ClearCase::CtCmd
Мне нужно установить модуль 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 ответ
На какой машине это? 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::Find
и с File::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.