2012-03-08 2 views
2

에 내가 같은 오류를 얻을 http://wiki.dreamhost.com/GitoliteGitolite는 DreamHost는

같이 Gitolite를 설치하려고 해요 :

"make_path" is not exported by the File::Path module
Can't continue after import errors at gitolite/src/gl-system-install line 5
BEGIN failed--compilation aborted at gitolite/src/gl-system-install line 5.

펄에 문제가 있지만 아직 해결책을 찾을 수 없습니다.

서버 기능
/usr/지방/빈/펄
펄 v5.10.0

+0

내 dreamhost 서버 (twins.dreamhost.com)의 File :: Path 2.07_03은 5.10.1입니다. File :: Path를 업그레이드 할 수없는 경우 서버를 전환 할 수 있습니다. 그렇지 않으면 ['perlbrew'] (http://search.cpan.org/perldoc?perlbrew)를 사용하여 자신의 Perl 버전을 설치할 수 있습니다. Cwd 테스트 중 하나가 dreamhost에서 실패하지만 실패를 무시하는 것은 무해하다는 점에 유의하십시오. – ikegami

답변

2

At press time, gl-system-install 전화 make_path : 나는 당신의 문제 또는 아니라면 모르겠지만, 당신은 파일 : 경로를 업데이트 시도 할 수 있습니다 line 75에서 시작하는 하위 :

sub check_dirs { 
    for my $dir ($bin_dir, $conf_dir, $hooks_dir) { 
     die "$dir should be an absolute path\n" unless $dir =~ m(^/); 
     make_path($dir); 
     -d $dir or die "$dir does not exist and could not be created\n"; 
    } 
} 

이 특별한 사용법은 대신 mkpath와 통화 호환됩니다. ’ 새 File :: Path 모듈을 설치해야합니다. gl-system-install

use File::Path qw(mkpath); 

및 라인 (78)에

mkpath($dir); 

의 변경 5 호선 나는 지난 주 내에서 동일한 상황이 발생했습니다. 위의 변경을 완료 한 후 gitolite’s installation instructions을 수행하면 더 이상 걸리지 않습니다.


업데이트 :이 문제는 지금 fixed in the gitolite repository입니다.

+0

놀라운! 매력처럼 일했습니다 :) 당신은 저에게 많은 두통을 덜어 줬습니다. – kLezer

+0

@kLezer 여러분을 환영합니다! –

3

make_path는 파일 : 경로 2.06_05 년에 도입되었다. 이전 버전을 사용해야합니다 (Perl 5.10.0은 File :: Path 2.04와 함께 제공됨). 파일 업그레이드 :: Path (또는 Perl 업그레이드, 이후 5.10 is no longer supported).

2

make_path는 File :: Path 2.07에서만 사용 가능합니다. 한 곳에서

cpan File::Path

또는

cpanp i File::Path