시스템은 우분투입니다./usr/bin /에 perl이 있고 버전은 5.18.2입니다. 이 상태에서 "sudo apt-get install **"으로 많은 소프트웨어를 설치하려고했지만 괜찮습니다."@INC에서 Debconf/Log.pm을 찾을 수 없습니다"라는 이유는 무엇입니까? 방금 설치 한 펄에/usr/bin/perl을 수정했습니다.
며칠 전에 다른 디렉토리 (/share/Software/perl-5.26.0/bin/perl)에 새로운 perl을 설치했습니다. 그리고 나는 원래 perl을 제거한 다음 새로운 perl을/use/bin /에 연결합니다. 명령은 다음과 같습니다 :
sudo mv /usr/bin/perl /usr/bin/old/; (the old/ directory was make before)
sudo ln -s /share/Software/perl-5.26.0/bin/perl /usr/bin/perl
그런 다음, 나는 apt-get에 의해 시스템 소프트웨어를 설치할 때 오류 정보를 얻었습니다. 오류는 다음과 같습니다 :
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
debconf: Perl may be unconfigured (Can't locate Debconf/Log.pm in @INC (you may need to install the Debconf::Log module) (@INC contains: /share/Software/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux /share/Software/perl-5.26.0/lib/site_perl/5.26.0 /share/Software/perl-5.26.0/lib/5.26.0/x86_64-linux /share/Software/perl-5.26.0/lib/5.26.0) at (eval 1) line 4.
BEGIN failed--compilation aborted at (eval 1) line 4.
) -- aborting
Setting up doc-base (0.10.5) ...
Can't locate Debian/DocBase/Common.pm in @INC (you may need to install the Debian::DocBase::Common module) (@INC contains: /share/Software/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux /share/Software/perl-5.26.0/lib/site_perl/5.26.0 /share/Software/perl-5.26.0/lib/5.26.0/x86_64-linux /share/Software/perl-5.26.0/lib/5.26.0) at /usr/sbin/install-docs line 8.
BEGIN failed--compilation aborted at /usr/sbin/install-docs line 8.
일부 소프트웨어는 성공적으로 설치할 수 있지만 일부는 설치할 수 없습니다. perl을 이전으로 되돌려 놓으면 정상입니다. (반드시 있어야합니다!)
모듈 "Debconf :: Log"모듈은 /share/Software/perl-5.26.0/lib/perl5에 있지만 데비안/DocBase/Common.pm을 찾을 수 없습니다. /share/Software/perl-5.26.0/lib/perl5의 경로는 perl의 @INC 안에 있습니다. 왜 그것을 찾을 수 없습니까?
펄 설치시 문제라고 생각합니다. 펄 설치할 때 나는 오류가 아래 얻을 : 각각의 펄이이 모듈을 검색합니다 몇 @INC
디렉토리로 컴파일
Useless use of single ref constructor in void context at op/gv.t line 1191.
In file included from ../../../../perl.h:5644:0,
from ExtTest.xs:2:
ExtTest.c: In function ‘XS_ExtTest_constant’:
../../../../embed.h:691:40: warning: ‘pv’ may be used uninitialized in this function [-Wmaybe-uninitialized]
#define sv_setpvn(a,b,c) Perl_sv_setpvn(aTHX_ a,b,c)
^
ExtTest.xs:420:14: note: ‘pv’ was declared here
const char *pv;
^
In file included from ../../../../perl.h:5644:0,
from ExtTest.xs:2:
../../../../embed.h:691:40: warning: ‘iv’ may be used uninitialized in this function [-Wmaybe-uninitialized]
#define sv_setpvn(a,b,c) Perl_sv_setpvn(aTHX_ a,b,c)
^
ExtTest.xs:418:6: note: ‘iv’ was declared here
IV iv;
^
In file included from ../../../../perl.h:5644:0,
from ExtTest.xs:2:
ExtTest.c: In function ‘XS_ExtTest_constant’:
../../../../embed.h:691:40: warning: ‘pv’ may be used uninitialized in this function [-Wmaybe-uninitialized]
#define sv_setpvn(a,b,c) Perl_sv_setpvn(aTHX_ a,b,c)
^
ExtTest.xs:194:14: note: ‘pv’ was declared here
const char *pv;
^
In file included from ../../../../perl.h:5644:0,
from ExtTest.xs:2:
ExtTest.c: In function ‘XS_ExtTest_constant’:
../../../../embed.h:675:42: warning: ‘iv’ may be used uninitialized in this function [-Wmaybe-uninitialized]
#define sv_setiv_mg(a,b) Perl_sv_setiv_mg(aTHX_ a,b)
^
ExtTest.xs:166:6: note: ‘iv’ was declared here
IV iv;
^
# Failed test 'cp updated mtime'
# at t/cp.t line 26.
# '38'
# <=
# '1'
# Looks like you failed 1 test of 1.
Request to remove file /share/Software/perl-5.26.0-src/cpan/File-Temp/suffixOEXZVr.dat could not be completed since it is not there!
at t/mktemp.t line 75.
# parser guessed wrong encoding expected 'CP1252' got 'UTF-8'
# Failed test 'File 1 atime set correctly'
# at t/utime.t line 113.
# '37.684463262558'
# <
# '0.1'
# Failed test 'File 1 mtime set correctly'
# at t/utime.t line 114.
# '37.684463262558'
# <
# '0.1'
# Failed test 'File 2 atime set correctly'
# at t/utime.t line 118.
# '37.684463262558'
# <
# '0.1'
# Failed test 'File 2 mtime set correctly'
# at t/utime.t line 119.
# '37.684463262558'
# <
# '0.1'
# Looks like you failed 4 tests of 18.
Can't open copy1-87150: Permission denied at ../lib/File/Copy.t line 326.
# Looks like your test exited with 13 just after 366.
Failed 3 tests out of 2449, 99.88% okay.
### Since not all tests were successful, you may want to run some of
### them individually and examine any diagnostic messages they produce.
### See the INSTALL document's section on "make test".
### You have a good chance to get more information by running
### ./perl harness
### in the 't' directory since most (>=80%) of the tests succeeded.
### You may have to set your dynamic library search path,
### LD_LIBRARY_PATH, to point to the build directory:
### setenv LD_LIBRARY_PATH `pwd`:$LD_LIBRARY_PATH; cd t; ./perl harness
### LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd t; ./perl harness
### export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH; cd t; ./perl harness
### for csh-style shells, like tcsh; or for traditional/modern
### Bourne-style shells, like bash, ksh, and zsh, respectively.
make: *** [test] Error 1
당신이 따라 다니는 펄 업데이트 지침은 무엇입니까? –
시스템이 Perl에서 제거 되었습니까? 아야. 우분투의 핵심 유틸리티의 절반 정도가 Perl을 사용합니다. 그 중 일부는 특정 모듈 버전에 따라 다릅니다. ** Perl ** 시스템을 사용하지 마십시오. 프로덕션 환경에서 최신 Perl이 필요하면 컴파일 한 다음 다른 곳으로 옮긴 다음,이를 사용하도록 프로그램을 만들어야합니다 (예 : shebang 또는 환경). 로컬로 필요하면 _plenv_ 또는 [_perlbrew_] (https://perlbrew.pl)을보십시오. 하지만 Perl 시스템을 절대로 혼란시키지 마십시오. – simbabque
일부 프로그램은/usr/bin/perl을 호출하기 때문에 perl을 바꾸고 싶지만 시스템 경로에 설치되어 있지 않은 perl 모듈이 필요합니다. 그리고 우리 시스템은 컴퓨터 클러스터입니다. 각 노트에 perl 모듈을 설치하고 싶지는 않습니다. 작업량이 너무 큽니다. – Susie