Отсутствует модуль Switch при выходе из установки Perl

2613
719016

Я месяцами работал над 64-битным кластером Linux, и сегодня утром кажется, что модуль Switch для Perl исчез из системы.

Если я сделаю findна месте, где я ожидаю, я получу:

find /opt/thirdparty/perl/ -name Switch.pm /opt/thirdparty/perl/perl-5.16.2/lib/5.16.2/CGI/Switch.pm /opt/thirdparty/perl/perl-5.18.1/lib/5.18.1/CGI/Switch.pm /opt/thirdparty/perl/perl-5.16.0/lib/5.16.0/CGI/Switch.pm /opt/thirdparty/perl/perl-5.14.2/lib/lib/5.14.2/CGI/Switch.pm /opt/thirdparty/perl/perl-5.14.2/lib/lib/perl5/site_perl/5.8.8/CGI/Switch.pm /opt/thirdparty/perl/perl-5.14.2/lib/5.14.2/CGI/Switch.pm /opt/thirdparty/perl/perl-5.14.2/lib/perl5/site_perl/5.8.8/CGI/Switch.pm  perl --version  This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux  perldoc POSIX [...] perl v5.14.2 2012-06-26 POSIX(1)  perldoc Switch No documentation found for "Switch". 

Есть идеи? Я путаю CGI :: Switch с Switch?

1

1 ответ на вопрос

1
szabgab

Коммутатор действительно был удален из основного дистрибутива Perl в версии 5.14.0 (был ли кластер только что обновлен?)

Хотя на самом деле использовать модули Switch не рекомендуется, (но я не могу найти нерекомендованную сейчас), вы можете установить его либо из CPAN, и, вероятно, ваш дистрибутив Linux также предоставляет его в виде отдельного пакета. Это, вероятно, только и apt-get installили yum installот вас.

связанный с этим вопрос: как я могу изменить свой код, чтобы он успешно работал как на старых версиях интерпретатора Perl, так и на новых в моем кластере? Спасибо 719016 10 лет назад 0
Либо вы убедитесь, что Switch установлен на более новой версии, либо вы прекратили использовать switch и используете обычные конструкции if / elsif / else. szabgab 10 лет назад 1

Похожие вопросы