(초보) Perl에 Modules를 install하는 과정에 오류가 발생하였습니다
안녕하세요^^ 맥에서 Perl을 사용하고자 처음 시도하고있습니다.
원하는 Module이 있어서, cpan에 들어간 후 install 명령으로 원하는 Modules를 설치하고자 하는데 다음과 같은 문제가 발생하였습니다.
해결방법이 있으시면 조언주십시오
인터넷과 책을 열심히 찾아봐도 프로그램을 처음 접하는 저로서는 막막하기만 합니다
다음은 install 명령 후의 pops up 된 것들을 붙여넣은 것입니다
-----------------
cpan[1]> install Parse:RecDescent
CPAN: Storable loaded ok (v2.18)
Going to read /Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/Metadata
Database was generated on Wed, 26 Sep 2012 00:07:03 GMT
Running install for module 'Parse::RecDescent'
CPAN: Data::Dumper loaded ok (v2.121_14)
'YAML' not installed, falling back to Data::Dumper and Storable to read prefs '/Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/prefs'
Running make for J/JT/JTBRAUN/Parse-RecDescent-1.967009.tar.gz
CPAN: Digest::SHA loaded ok (v5.45)
CPAN: Compress::Zlib loaded ok (v2.008)
Checksum for /Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/sources/authors/id/J/JT/JTBRAUN/Parse-RecDescent-1.967009.tar.gz ok
Scanning cache /Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/build for sizes
............................................................................DONE
x Parse-RecDescent-1.967009/
x Parse-RecDescent-1.967009/Changes
x Parse-RecDescent-1.967009/demo/
x Parse-RecDescent-1.967009/demo/demo_dot.pl
x Parse-RecDescent-1.967009/demo/demo_LaTeXish.pl
x Parse-RecDescent-1.967009/demo/demo_parsetree.pl
x Parse-RecDescent-1.967009/demo/demo_separators.pl
x Parse-RecDescent-1.967009/demo/demo_metaRD.pm
x Parse-RecDescent-1.967009/demo/demo_restructure_easy.pl
x Parse-RecDescent-1.967009/demo/demo_OOautoparsetree.pl
x Parse-RecDescent-1.967009/demo/demo_logic.pl
x Parse-RecDescent-1.967009/demo/demo_selfmod.pl
x Parse-RecDescent-1.967009/demo/demo_undumper.pl
x Parse-RecDescent-1.967009/demo/demo_quicklist.pl
x Parse-RecDescent-1.967009/demo/demo_mccoy.pl
x Parse-RecDescent-1.967009/demo/demo_autoscoresep.pl
x Parse-RecDescent-1.967009/demo/demo.pl
x Parse-RecDescent-1.967009/demo/demo_lisplike.pl
x Parse-RecDescent-1.967009/demo/demo_derived.pl
x Parse-RecDescent-1.967009/demo/demo_skipcomment.pl
x Parse-RecDescent-1.967009/demo/demo_buildcalc.pl
x Parse-RecDescent-1.967009/demo/demo_recipe.pl
x Parse-RecDescent-1.967009/demo/demo_piecewise.pl
x Parse-RecDescent-1.967009/demo/demo_simplequery.pl
x Parse-RecDescent-1.967009/demo/demo_language.pl
x Parse-RecDescent-1.967009/demo/demo_PerlCSV.pl
x Parse-RecDescent-1.967009/demo/demo_implicit.pl
x Parse-RecDescent-1.967009/demo/demo_decomment.pl
x Parse-RecDescent-1.967009/demo/demo_autostub.pl
x Parse-RecDescent-1.967009/demo/demo_eval.pl
x Parse-RecDescent-1.967009/demo/demo_LaTeXish_autoact.pl
x Parse-RecDescent-1.967009/demo/demo_perlparsing.pl
x Parse-RecDescent-1.967009/demo/demo_leftop.pl
x Parse-RecDescent-1.967009/demo/demo_NL2SQL.pl
x Parse-RecDescent-1.967009/demo/demo_decomment_nonlocal.pl
x Parse-RecDescent-1.967009/demo/demo_precalc.pl
x Parse-RecDescent-1.967009/demo/demo_cpp.pl
x Parse-RecDescent-1.967009/demo/demo_simple.pl
x Parse-RecDescent-1.967009/demo/demo_matchrule2.pl
x Parse-RecDescent-1.967009/demo/demo_embedding.pl
x Parse-RecDescent-1.967009/demo/demo_errors.pl
x Parse-RecDescent-1.967009/demo/demo_delete.pl
x Parse-RecDescent-1.967009/demo/demo.c
x Parse-RecDescent-1.967009/demo/demo_another_Cgrammar.pl
x Parse-RecDescent-1.967009/demo/demo_whoson.pl
x Parse-RecDescent-1.967009/demo/demo_tokens.pl
x Parse-RecDescent-1.967009/demo/demo_codeblock.pl
x Parse-RecDescent-1.967009/demo/demo_textgen.pl
x Parse-RecDescent-1.967009/demo/demo_Cgrammar_v2.pl
x Parse-RecDescent-1.967009/demo/demo_methods.pl
x Parse-RecDescent-1.967009/demo/demo_Cgrammar.pl
x Parse-RecDescent-1.967009/demo/demo_simpleXML.pl
x Parse-RecDescent-1.967009/demo/demo_street.pl
x Parse-RecDescent-1.967009/demo/demo_bad.pl
x Parse-RecDescent-1.967009/demo/demo_opreps.pl
x Parse-RecDescent-1.967009/demo/demo_arithmetic.pl
x Parse-RecDescent-1.967009/demo/demo_restructure_painful.pl
x Parse-RecDescent-1.967009/demo/demo_itemhash.pl
x Parse-RecDescent-1.967009/demo/demo_autorule.pl
x Parse-RecDescent-1.967009/demo/demo_calc.pl
x Parse-RecDescent-1.967009/demo/demo_scoredsep.pl
x Parse-RecDescent-1.967009/demo/demo_operator.pl
x Parse-RecDescent-1.967009/demo/demo_leftassoc.pl
x Parse-RecDescent-1.967009/demo/demo_template.pl
x Parse-RecDescent-1.967009/demo/demo_randomsentence.pl
x Parse-RecDescent-1.967009/demo/demo_lexer.pl
x Parse-RecDescent-1.967009/demo/demo_matchrule.pl
x Parse-RecDescent-1.967009/demo/demo_OOparsetree.pl
x Parse-RecDescent-1.967009/Makefile.PL
x Parse-RecDescent-1.967009/MANIFEST
x Parse-RecDescent-1.967009/lib/
x Parse-RecDescent-1.967009/lib/Parse/
x Parse-RecDescent-1.967009/lib/Parse/RecDescent.pm
x Parse-RecDescent-1.967009/README
x Parse-RecDescent-1.967009/Build.PL
x Parse-RecDescent-1.967009/META.json
x Parse-RecDescent-1.967009/tutorial/
x Parse-RecDescent-1.967009/tutorial/TPJ_maze.gif
x Parse-RecDescent-1.967009/tutorial/TPJ-yacc-proc.gif
x Parse-RecDescent-1.967009/tutorial/TPJ_tree.gif
x Parse-RecDescent-1.967009/tutorial/TPJ-PRD-proc.gif
x Parse-RecDescent-1.967009/tutorial/tutorial.html
x Parse-RecDescent-1.967009/t/
x Parse-RecDescent-1.967009/t/00.load.t
x Parse-RecDescent-1.967009/t/reentry.t
x Parse-RecDescent-1.967009/t/precompile.t
x Parse-RecDescent-1.967009/t/skip.t
x Parse-RecDescent-1.967009/t/separated_repetition.t
x Parse-RecDescent-1.967009/t/pod.t
x Parse-RecDescent-1.967009/t/leftop_cap.t
x Parse-RecDescent-1.967009/t/text.t
x Parse-RecDescent-1.967009/t/util.pl
x Parse-RecDescent-1.967009/t/01.basics.t
x Parse-RecDescent-1.967009/t/autotree.t
x Parse-RecDescent-1.967009/t/re_capture_return.t
x Parse-RecDescent-1.967009/t/skip_dynamic.t
x Parse-RecDescent-1.967009/META.yml
x Parse-RecDescent-1.967009/ToDo
CPAN: File::Temp loaded ok (v0.18)
CPAN: Module::Build loaded ok (v0.280801)
Warning (usually harmless): 'YAML' not installed, will not store persistent state
CPAN.pm: Going to build J/JT/JTBRAUN/Parse-RecDescent-1.967009.tar.gz
Checking whether your kit is complete...
Looks good
Checking prerequisites...
Looks good
Creating new 'Build' script for 'Parse-RecDescent' version '1.967009'
Could not read '/Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/build/Parse-RecDescent-1.967009-y6hpAY/META.yml'. Falling back to other methods to determine prerequisites
Copying lib/Parse/RecDescent.pm -> blib/lib/Parse/RecDescent.pm
Manifying blib/lib/Parse/RecDescent.pm -> blib/libdoc/Parse::RecDescent.3pm
JTBRAUN/Parse-RecDescent-1.967009.tar.gz
./Build -- OK
Warning (usually harmless): 'YAML' not installed, will not store persistent state
Running Build test
t/00.load.................ok 1/1# Testing Parse::RecDescent 1.967009
t/00.load.................ok
t/01.basics...............ok
t/autotree................ok
t/leftop_cap..............ok
t/pod.....................ok
t/precompile..............ok
t/re_capture_return.......ok
t/reentry.................skipped
all skipped: Test::Warn required for testing reentry
t/separated_repetition....ok
t/skip....................ok
t/skip_dynamic............ok
t/text....................ok
All tests successful, 1 test skipped.
Files=12, Tests=78, 1 wallclock secs ( 0.88 cusr + 0.13 csys = 1.01 CPU)
JTBRAUN/Parse-RecDescent-1.967009.tar.gz
./Build test -- OK
Warning (usually harmless): 'YAML' not installed, will not store persistent state
Running Build install
Prepending /Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/build/Parse-RecDescent-1.967009-y6hpAY/blib/arch /Network/Servers/xiaoserver.scripps.edu/Homes/hyjin/.cpan/build/Parse-RecDescent-1.967009-y6hpAY/blib/lib to PERL5LIB for 'install'
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR: Can't create '/Library/Perl/5.10.0/Parse'
mkdir /Library/Perl/5.10.0/Parse: Permission denied at /System/Library/Perl/5.10.0/ExtUtils/Install.pm line 479
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
at /System/Library/Perl/5.10.0/Module/Build/Base.pm line 2804
JTBRAUN/Parse-RecDescent-1.967009.tar.gz
./Build install -- NOT OK
Warning (usually harmless): 'YAML' not installed, will not store persistent state
Failed during this command:
JTBRAUN/Parse-RecDescent-1.967009.tar.gz : install NO
mkdir
mkdir /Library/Perl/5.10.0/Parse: Permission denied at /System/Library/Perl/5.10.0/ExtUtils/Install.pm line 479
빌드와 테스트 모두 성공하였으나, 마지막 설치 단계에서 권한이 부족하여 /Library/Perl/5.10.0/Parse 디렉터리를 생성하지 못해 오류가 발생하였습니다. sudo를 사용하여 root 권한으로 설치하거나, 관리자가 아닌 사용자의 로컬 환경에 펄 환경을 구성하는 perlbrew를 사용하세요.
전자의 방법을 택할 경우 sudo cpan이라고 입력하여 root 권한으로 cpan을 실행한 후, 이후 동알한 방법으로 설치하거나, http://perlbrew.pl/ 사이트에 방문하여 perlbrew 환경을 구축하여 시스템 전체에 영향을 주지 않고 펄을 사용할 수 있습니다.
감사합니다^^
저도 권한 문제일 것이라고 짐작했는데 아마 그문제가 맞는것 같습니다. 제가 일하는 곳의 공용 서버에 무언가를 설치해야할때는 additional athentication step이 항상 required되더라구요. perlbrew를 한번 시도해보겟습니다 갑사합니다
댓글 달기