2017-02-16 73 views
0

我試圖在cygwin中安裝Perl模塊,例如在answer中沒有成功。我有以下錯誤:cygwin中不可用的cpan

$ perl -MCPAN -e shell 
Can't locate CPAN.pm in @INC (you may need to install the CPAN module) (@INC contains: /usr/lib/perl5/site_perl/5.22/x86_64-cygwin-threads /usr/lib/perl5/site_perl/5.22 /usr/lib/perl5/vendor_perl/5.22/x86_64-cygwin-threads /usr/lib/perl5/vendor_perl/5.22 /usr/lib/perl5/5.22/x86_64-cygwin-threads /usr/lib/perl5/5.22 .). 
BEGIN failed--compilation aborted. 

我如何獲得我的cygwin中的cpan


還有一些額外的細節。其實我的目的是像answer那樣安裝ack。但是,它沒有工作。安裝完成後我已經得到了一個錯誤:

$ ack 
Can't locate filetest.pm in @INC (you may need to install the filetest module) (@INC contains: /usr/lib/perl5/site_perl/5.22/x86_64-cygwin-threads /usr/lib/perl5/site_perl/5.22 /usr/lib/perl5/vendor_perl/5.22/x86_64-cygwin-threads /usr/lib/perl5/vendor_perl/5.22 /usr/lib/perl5/5.22/x86_64-cygwin-threads /usr/lib/perl5/5.22 .) at /home/loom/bin/ack line 218. 
BEGIN failed--compilation aborted at /home/loom/bin/ack line 218. 

以下是我試圖找到cpan

$ cpan 
-bash: cpan: command not found 

$ ll /usr/lib/perl5/5.22/CPAN.pm 
ls: cannot access '/usr/lib/perl5/5.22/CPAN.pm': No such file or directory 

$ find /usr/ -name *.pm | grep CPAN 
/usr/lib/perl5/5.22/CPAN/Meta/Converter.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Feature.pm 
/usr/lib/perl5/5.22/CPAN/Meta/History.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Merge.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Prereqs.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Requirements.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Spec.pm 
/usr/lib/perl5/5.22/CPAN/Meta/Validator.pm 
/usr/lib/perl5/5.22/CPAN/Meta/YAML.pm 
/usr/lib/perl5/5.22/CPAN/Meta.pm 
/usr/lib/perl5/5.22/Parse/CPAN/Meta.pm 
+0

這是奇怪的... [perl軟件包(https://cygwin.com/packages/x86_64/perl/perl-5.22.3-1)應在'/ usr/lib中安裝CPAN.pm/perl5/5.22/CPAN.pm',它位於你的'@ INC'中。如果你做'cpan Foo :: Bar'會發生什麼(Foo :: Bar是你想要安裝的模塊)? – ThisSuitIsBlackNot

+0

謝謝@ThisSuitIsBlackNot。我已經擴展了這個問題 – Loom

+1

TSIBN已經回答了你的問題:它帶有'perl-5.22.3-1'軟件包。所以(重新)安裝該軟件包! – ikegami

回答

1

重新安裝perl幫助。

$ apt-cyg install perl