CPAN 모듈을 로컬 디렉토리에 어떻게 설치할 수 있습니까?
호스팅 된 Linux 시스템을 사용하고 있으므로 /usr/lib
디렉토리 에 쓸 권한이 없습니다 .
일반적인 방법으로 CPAN 모듈을 설치하려고 할 때 :
perl Makefile.PL
make test
make install
해당 모듈은 blib/lib/
폴더 로 추출됩니다 . 나는 보관 use blib/lib/ModuleName
했지만 여전히 컴파일러는 모듈을 찾을 수 없다고 말합니다. .pm 파일을 로컬 디렉토리에 복사하려고 시도하고 보관 require ModuleName
했지만 여전히 오류가 발생합니다.
모듈을 다른 디렉토리에 설치하고 사용하려면 어떻게해야합니까?
비슷한 문제가있어서 local :: lib를 설치할 수도 없었습니다.
.pl 파일과 관련된 어딘가에 모듈을 설치 한 설치 프로그램을 만들었습니다.
설치는 다음과 같이 진행됩니다.
perl Makefile.PL PREFIX=./modulos
make
make install
그런 다음 ./에있는 모듈이 필요한 .pl 파일에서
use lib qw(./modulos/share/perl/5.8.8/); # You may need to change this path
use module::name;
나머지 파일 (makefile.pl, module.pm 등)은 변경할 필요가 없습니다.
.pl 파일을 호출 할 수 있습니다.
perl file.pl
이미 Stackoverflow에 대한 다른 답변 :
perlfaq8에서 :
내 모듈 / 라이브러리 디렉토리를 어떻게 유지합니까?
모듈을 빌드 할 때 Perl에 모듈을 설치할 위치를 알려주십시오.
Makefile.PL 기반 배포의 경우 Makefile을 생성 할 때 INSTALL_BASE 옵션을 사용하십시오.
perl Makefile.PL INSTALL_BASE=/mydir/perl
CPAN.pm 구성에서이를 설정하여 CPAN.pm 쉘을 사용할 때 모듈이 개인 라이브러리 디렉토리에 자동으로 설치되도록 할 수 있습니다.
% cpan
cpan> o conf makepl_arg INSTALL_BASE=/mydir/perl
cpan> o conf commit
Build.PL 기반 배포의 경우 --install_base 옵션을 사용합니다.
perl Build.PL --install_base /mydir/perl
이 옵션도 자동으로 사용하도록 CPAN.pm을 구성 할 수 있습니다.
% cpan
cpan> o conf mbuildpl_arg '--install_base /mydir/perl'
cpan> o conf commit
local :: lib 가 도움이 될 것입니다. "make install"(및 "Build install")이 쓸 수있는 디렉토리에 설치하도록 설득 perl
하고 해당 모듈을 얻는 방법을 알려 줍니다.
일반적으로 blib / 디렉토리에있는 모듈을 사용하려면 일반적으로 스크립트를 호출하는 방법이 perl -Mblib ...
어디 ...
인지 말하고 싶습니다 .
Makefile.PL 기반 배포의 경우 Makefile을 생성 할 때 INSTALL_BASE 옵션을 사용하십시오.
perl Makefile.PL INSTALL_BASE=/mydir/perl
Perlbrew를 강력히 추천 합니다 . 여러 버전의 Perl을 실행하고, 패키지를 설치하고, 원하는 경우 Perl 내부를 해킹하고, 모든 일반 사용자 권한을 사용할 수 있습니다.
참고 URL : https://stackoverflow.com/questions/540640/how-can-i-install-a-cpan-module-into-a-local-directory
'program tip' 카테고리의 다른 글
Entity Framework : db가 변경 될 때 모델을 어떻게 새로 고치나요? (0) | 2020.12.05 |
---|---|
Android의 여러 테이블 SQLite DB 어댑터? (0) | 2020.12.05 |
OpenSSL 및 C ++로 sha256 생성 (0) | 2020.12.04 |
클래스 이름에 점 (.)으로 요소 스타일 지정 (0) | 2020.12.04 |
mysql 결과를 두 번 확인하는 방법은 무엇입니까? (0) | 2020.12.04 |