Как устранить проблемы с локальной::lib после обновления системы / Perl?
Наш системный администратор недавно обновил мою ОС и Perl (до 5.12.3). когда я загружаю переменные окружения local::lib, кажется, что он нарушает все, что зависит от xs:
demianshell~> perl -e 'use Storable; store({a=>1}, 'test')'
demianshell~> eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)
demianshell~> perl -e 'use Storable; store({a=>1}, 'test')'
Assertion ((svtype)((_svi)->sv_flags & 0xff)) >= SVt_RV failed: file "Storable.xs", line 3753 at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/_store.al) line 263, at -e line 1
это легко исправить?
1 ответ
Если вы говорите, что ваш единственный Perl был обновлен не с Perl 5.12.*, А с бинарных компонентов вашего local::lib
установки нет, то извините, нет, нет простого решения этой проблемы, кроме восстановления local::lib
модули для вашего нового Perl. Компоненты Perl XS просто не подходят для основных версий Perl.
Вот почему часто хорошей идеей является не доверять какой-либо системе Perl, поскольку она находится вне вашего контроля. Это всегда хороший план, чтобы использовать ваши собственные установки Perl, так что вы можете контролировать это, либо с App::perlbrew
или просто отдельная установка Perl где-нибудь.