Проблема: несколько активных инсталляций perl-а в Ubuntu, приводящие к конфликтам в виде ошибок типа:
Can't load '/usr/local/lib/perl5/site_perl/5.20.0/x86_64-linux/auto/List/Util/Util.so' for module List::Util: /usr/local/lib/perl5/site_perl/5.20.0/x86_64-linux/auto/List/Util/Util.so: undefined symbol: PL_stack_sp at /usr/share/perl/5.18/XSLoader.pm line 68.
При этом я, дурында, скопировала Util.so в директорию /usr/local/lib/perl5/site_perl/5.20.0/x86_64-linux/... от другой версии perl-а, о чем благополучно забыла, но настойчиво при любом обращении к perl получала трагично неразрешимую ошибку
Segmentation fault (core dumped)
причину которой поняла только посмотрев
$ tail -f /var/log/syslog
после чего вернула Util,so обратно
Исходная же проболема решилась настройкой perlbrew:
$ perlbrew install perl-5.20.0
$ perlbrew switch perl-5.20.0
Но возникла другая: при переключении на perl-5.20.0 поиск модулей происходил в неправильных директориях, что приводило к ошибкам вида
Can't locate ModuleName.pm in @INC (you may need to install the ModuleName module)
Для решения этой проблемы переустановила некогда ранее установленный cpanm:
$ sudo rm -rf ~/.cpanm/
$ wget -O- cpanmin.us | /usr/bin/perl - App::cpanminus --force
Поменяла local-lib для перлбрювово cpanm:
$ cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
После чего модули начали устанавливаться и читаться из директории perlbrew:
$ cpanm ModuleName
и настало счастье