[英]How to downgrade Perl on Mac OS X Mavericks
新發布的 Mavericks 已從其存儲庫中刪除了已棄用的模塊“Switch.pm”。 但是,我最近嘗試構建 AOSP 源代碼樹,它以某種方式使用此模塊生成“make-hash-tools.pl”
Mavericks 的 perl 版本為 5.16.2,其前身 Mountain Lion 的 perl 版本為 5.12.4。 有沒有辦法降級我的 Perl?
編譯錯誤如下所示:
Can't locate Switch.pm in @INC (@INC contains: /Library/Perl/5.16/darwin-thread-\
multi-2level /Library/Perl/5.16 /Network/Library/Perl/5.16/darwin-thread-multi-2level\
/Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.2\
/System/Library/Perl/5.16/darwin-thread-multi-2level /System/Library/Perl/5.16\
/System/Library/Perl/Extras/5.16/darwin-thread-multi-2level \
/System/Library/Perl/Extras/5.16 .) at external/webkit/Source/WebCore\
/make-hash-tools.pl line 23.
謝謝~!
您可以使用perlbrew將 Perl 的並行版本安裝在其自己的目錄中,並帶有自己的模塊。 目前,它允許您安裝 Perl,最早可以追溯到 5.003_07,盡管並非所有 Perl Porters 都支持它們以進行安全修復。
不過,從 CPAN 安裝 Switch可能會更簡單。
看起來像運行sudo cpanm Switch --force
對我sudo cpanm Switch --force
你也可以使用這個:
$ sudo defaults write '/Library/Preferences/com.apple.versioner.perl' Version 5.12
它使大多數東西的 perl 運行版本 12。 不幸的是,不適用於apache
...
在 10.9.2 上為我工作,沒有“強制”。
cpan[2]> install Switch
Running install for module 'Switch'
Running make for C/CH/CHORNY/Switch-2.17.tar.gz
Fetching with LWP:
......一堆東西......
CPAN.pm: Building C/CH/CHORNY/Switch-2.17.tar.gz
Checking if your kit is complete...
Looks good
Writing Makefile for Switch
Writing MYMETA.yml and MYMETA.json
...一堆xcode許可證的東西...
cp Switch.pm blib/lib/Switch.pm
Manifying blib/man3/Switch.3pm
CHORNY/Switch-2.17.tar.gz
/usr/bin/make -- OK
'YAML' not installed, will not store persistent state
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/given.t ... ok
t/nested.t .. ok
t/switch.t .. ok
All tests successful.
Files=3, Tests=590, 0 wallclock secs ( 0.04 usr 0.01 sys + 0.22 cusr 0.01 csys = 0.28 CPU)
Result: PASS
CHORNY/Switch-2.17.tar.gz
/usr/bin/make test -- OK
Running make install
Installing /Library/Perl/5.16/Switch.pm
Installing /usr/local/share/man/man3/Switch.3pm
Appending installation info to /Library/Perl/Updates/5.16.2/darwin-thread-multi-2level/perllocal.pod
CHORNY/Switch-2.17.tar.gz
/usr/bin/make install -- OK
然后我運行了我之前拋出“Can't locate Switch.pm in @INC”錯誤的代碼,並且代碼運行良好。
我發現這些命令有效。
sudo perl -MCPAN -e shell
cpan > force install Switch
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.