나는 매번 작은 문제에 직면한다
cpan YAML
/root/perl5
또는 내가 루트로 설치한 모듈을 다른 사용자가 사용할 수 없도록 설치하는 Perl 모듈을 설치해 보십시오 .
내가 한다고 해도
rm -frv /root/perl5 /root/.cpan
cpan YAML
여전히 루트 홈 디렉토리에 설치된 것을 다시 실행하십시오 . 이것을 어떻게 바꿀 수 있나요?
답변1
기본 설정을 정의하는 구성 파일이 있습니다. 이 파일은 cpan 설치 경로에서 찾을 수 있습니다 CPAN/Config.pm
. 경로는 일반적으로 /usr/lib/perl5/<version>/
.
makepl_arg
내 제안은 Perl 모듈이 or를 통해 빌드 및 설치됨에 따라 전역 구성 파일의 값을 조정하는 것입니다 . 다음과 같이 쓰면:mbuildpl_arg
MakeMaker
Build
'makepl_arg' => q[INSTALLDIRS=perl INSTALLBIN=/opt/mycpanmodules/bin/ INSTALLARCHLIB=/opt/mycpanmodules/perl5/ INSTALLPRIVLIB=/opt/mycpanmodules/perl5/ INSTALLSCRIPT=/opt/mycpanmodules/perl5/ INSTALLMAN1DIR=/opt/mycpanmodules/man/ INSTALLMAN3DIR=/opt/mycpanmodules/man/],
'mbuildpl_arg' => q[--install_path lib=/opt/mycpanmodules/perl5/ --install_path arch=/opt/mycpanmodules/perl5/ --install_path script=/opt/mycpanmodules/bin/ --install_path bindoc=/opt/mycpanmodules/man/ --install_path libdoc=/opt/mycpanmodules/man/],
다음을 통해 Config.pm
설치된 모든 모듈에서 로 이동하세요.cpan
/opt/mycpanmodules
마지막으로 환경 변수를 설정해야 합니다.
PERL5LIB=/opt/mycpanmodules/perl5
perl
귀하의 지역 주민이 추가 설치를 검색할 위치를 알 수 있도록 합니다 modules
.
답변2
당신의 것을 확인하십시오 .bashrc
. 내 변수에서 이상한 변수를 발견했습니다.
/root/.bashrc:PERL_MM_OPT="INSTALL_BASE=/root/perl5"; export PERL_MM_OPT;
삭제하고 다시 로그인하세요.
답변3
dh-make-perl
CPAN에서 .deb 패키지를 빌드할 수 있는 패키지를 살펴볼 수도 있습니다 . 모듈을 먼저 다운로드하거나 dh-make-perl
직접 다운로드할 수 있습니다.
libyaml-perl
더 좋은 점은 이미 데비안용으로 패키지된 CPAN YAML 패키지를 설치하는 것이 어떨까요 ?
경험상 데비안에서 CPAN 모듈을 찾을 때 먼저 데비안 패키지 목록을 확인하세요. 원하는 것이 이미 패키지되어 있을 가능성이 높습니다. 그렇지 않은 경우 아마도 대안이 있을 것입니다(일반적으로 해당 대안이 최고이거나 유사한 모듈 모음에서 최고 중 하나입니다).
예를 들어 apt-cache-search yaml | grep perl
... 내 시스템(debian sid)에서는 다음 목록이 생성됩니다.
$ apt-cache 검색 yaml | libbest-perl - 대체 가능한 모듈 로더 libcgi-formbuilder-source-yaml-perl - YAML 파일에서 FormBuilder 애플리케이션 초기화 libcgi-session-serialize-yaml-perl - CGI::Session 직렬 변환기에 대한 YAML 및 YAML::Syck 지원 libclone-perl - Perl 데이터 유형을 재귀적으로 복사합니다. libconfig-any-perl - 다양한 파일 형식에서 구성을 로드하는 모듈 libconfig-merge-perl - 구성 모듈을 위한 Umbrella 인터페이스 libconfig-yaml-perl - YAML 기반 구성 파일을 조작하기 위한 모듈 libcpan-meta-yaml-perl - CPAN 메타파일의 YAML 하위 집합 재구현 libdata-phrasebook-loader-yaml-perl - YAML을 사용하는 Data::Phrasebook 로더 클래스 libdata-yaml-perl - Perl 데이터 구조의 간단한 YAML 직렬화 libhtml-template-dumper-perl - 테스트에 적합한 형식으로 템플릿 데이터를 출력합니다. libmoosex-blessed-reconstruct-perl - Data::Moose 객체 생성을 위한 방문자 libmoosex-yaml-perl - YAML에서 Moose 객체를 로드하기 위한 모듈 libpadre-plugin-datawalker-perl - 단순 Perl 데이터 구조 브라우저 Padre libpadre-plugin-yaml-perl - Padre Perl IDE에 대한 YAML 지원 libparse-cpan-meta-perl - META.yml 및 기타 유사한 CPAN 메타데이터 파일을 구문 분석하기 위한 모듈 libsql-translator-perl - SQL 번역 라이브러리 libtemplate-plugin-yaml-perl - YAML 모듈을 위한 간단한 템플릿 툴킷 플러그인 인터페이스 libtest-cpan-meta-perl - CPAN 패킷 메타데이터 유효성을 검사하기 위한 테스트 모듈 libtest-cpan-meta-yaml-perl - META.yml 파일 유효성 검사를 위한 테스트 모듈 libtest-yaml-meta-perl - 더 이상 사용되지 않는 Test::YAML::Meta를 위한 전환 가상 패키지 libtest-yaml-valid-perl - 유효한 YAML을 테스트하기 위한 모듈 libvitacilina-perl - Perl 피드 집계 라이브러리 libyaml-appconfig-perl - YAML 및 변수 참조를 사용하여 구성 파일 관리 libyaml-libyaml-perl - libyaml에 대한 Perl 인터페이스, YAML 구현 libyaml-perl - YAML은 마크업 언어가 아닙니다. libyaml-shell-perl - YAML 테스트 셸 libyaml-syck-perl - 빠르고 가벼운 YAML 로더 및 덤퍼를 제공하는 Perl 모듈 libyaml-tiny-perl - YAML 파일을 읽고 쓰기 위한 Perl 모듈 perl-modules - 코어 Perl 모듈
그런 다음 를 사용하여 각 패키지의 세부 정보를 얻을 수 있습니다 apt-cache show
.
$ apt-cache는 libyaml-perl을 보여줍니다. 패키지: libyaml-perl 버전: 0.84-1 설치 수: 200 유지관리자: Debian Perl Group <[이메일 보호됨]> 아키텍처: 모두 의존하는 것: 펄 권장 사항: libyaml-libyaml-perl | 제안: libyaml-shell-perl Description-en: YAML은 마크업 언어가 아닙니다 YAML은 인간에게 최적화된 범용 데이터 직렬화 언어입니다. 가독성. 가장 현대적인 데이터 구조를 표현하는 데 사용할 수 있습니다. 프로그래밍 언어(물론 Perl 포함). YAML은 유니코드를 지원합니다. 그리고 다양한 언어로 구현된 파서가 많이 있습니다. 상당히 이식 가능한 직렬화 형식으로 만듭니다. . YAML 모듈은 현재 더 이상 사용되지 않는 구현입니다. Pure Perl에서는 시스템이 느려질 수 있습니다. 작가가 의도한 것 다양한 YAML을 위한 프런트엔드 인터페이스 모듈로 변경 구현. 현재 이 목적으로 제공되는 모듈은 YAML::Any 입니다. 단순히 사용 가능한 최상의 YAML 구현을 선택합니다. 홈페이지: http://search.cpan.org/dist/YAML/ 설명-md5: 207c6e42686e3356a6c6e3a975e92075 태그: devel::lang:perl, devel::library, 구현::perl 부분: 펄 우선순위: 선택사항 파일 이름: pool/main/liby/libyaml-perl/libyaml-perl_0.84-1_all.deb 사이즈: 72812 MD5 합계: 4e4ab9f980f050253d403002bc7e3e39 SHA1: 8f1837257d08b2eb3e7a5dbcfd73d6954b55cf98 SHA256: 6636a5794490b7bd6ddfd3f87b3e6a90b4f212d5115db641fae007e7b5