2014-06-05 2 views
0

CPAN 모듈 ClearCase::CtCmd을 설치해야합니다. 모듈 CtCmd-1.09을 다운로드했습니다. 명령 perl Makefile.PL을 실행 한 후 나는 다음과 같은 오류 데 :CPAN 모듈 설치 ClearCase :: CtCmd

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. 

내가 펄 버전 v5.8.5이라고 언급. INSTALL 파일에 "ClearCase::CtCmd 모듈에 Perl이 필요합니다. v5.6.1 또는 v5.8 이상이 필요합니다."

+2

펄'5.8.x'; 나는'windows 2000'을 사용했기 때문에 나이와 왜 업데이트가 권장되는지 알려주고 있습니다. –

+0

현재 버전의 [ClearCase :: CtCmd] (http://search.cpan.org/perldoc?ClearCase%3A%3ACtCmd)는 1.11입니다. Solaris의 구식 버전과 Perl의 구식 버전이 붙어 있더라도 ClearCase :: CtCmd의 덜 오래된 버전이 더 잘 작동한다는 것을 알 수 있습니다. –

답변

0

어떤 종류의 기계입니까? 솔라리스? ClearCase에 이미 ClearCase::CtCmd이 포함 된 자체 Perl 버전이 포함되어 있지 않습니까?

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/MakeMakerExtUtils/MM_Unix.pm를 호출하고 Makefile을 작성하려고합니다. 내가 CtCmd.pm이 어디에 위치하는지 알아내는 느낌이 들었습니다. File::FindFile::Find이 실패했습니다. MakeMaker은 Makefile을 만들 수 없습니다.

나는 Makefile.PL을보고 있으며 $ATRIA_ROOT이 설정되어야 함을 확인하거나 그렇지 않으면 /opt/rational/clearcase으로 추측됩니다. 이것과 관련이있을 수 있습니까?

아니요. 보이지 않습니다. 그렇지 않으면 ClearCase 버전에 대한 보고서를받지 못했을 것입니다. gcc 버전이 검색되는 유일한 곳이기 때문에 시스템이 Solaris라고 생각합니다.

나는 그것이 무엇을하고 있는지보기 위해 Makefile.PL 프로그램에서 약간의 시간을 할애 할 때라고 생각합니다. 나는 라인 # 218에서 WriteMakefile(%opts);인지 알았다. %opts 서브 루틴을 인쇄하기 위해 약간의 루틴을 추가 할 것이다 (아마 print 대신에 warn을 사용한다). 이 서브 루틴은 실제로 Makefile을 작성하는 ExtUtils::MakeFile에 있습니다. 그것은 당신에게 무슨 일이 일어나고 있는지 알 수 있습니다.

불행히도 문제는 마치 ExtUtils::MakeMaker이 작동하는 것과 관련이있는 것으로 보입니다. Perl 5.8.5를 사용하면 오래된 버전이 ExtUtils::MakeMaker이라는 것을 의미합니다. ExtUtils::MakeMaker의 릴리스 정보를보고 그 실마리가 있는지 확인하십시오. Perl 5.8.5는 더 이상 지원되지 않습니다. Perl의 아주 오래된 버전입니다.

+0

나는 이것을 결국 해결했다. 나는 새로운 perl 버전을 설치했다. –