Удалите Perl 5.10 и установите 5.8 в Ubuntu 10.04
Я использовал Ubuntu 8.04 с установленным Perl 5.8.8. Я установил Bugzilla 3.4.4 с некоторыми пользовательскими скриптами, и он работал нормально. Мне пришлось обновить Ubuntu с 8.04 до 10.04, и автоматически Perl также обновляется с Perl 5.8 до 5.10. Теперь при доступе к Bugzilla отображается сообщение об ошибке, связанное с модулем Perl. Пытаясь бежать checksetup.pl
, Я получаю следующее сообщение об ошибке:
root@cvsnew:/var/www/bugzilla-3.4# perl checksetup.pl
* This is Bugzilla 3.4.3 on perl 5.10.1
* Running on Linux 2.6.32-24-generic-pae #39-Ubuntu SMP Wed Jul 28 07:39:26 UTC 2010
Checking perl modules...
Checking for CGI.pm (v3.33) ok:
found v3.48
perl: symbol lookup error:
lib/i486-linux-gnu-thread-multi/auto/Digest/SHA/SHA.so: undefined symbol: Perl_Tstack_sp_ptr
Доступ к броскам Bugzilla: "500 Внутренняя ошибка сервера".
Я исследовал эту проблему и обнаружил, что эта проблема возникла потому, что обновление Ubuntu обновляет Perl 5.8 до 5.10 автоматически. Похоже, что Perl 5.10.1 не является двоичным, совместимым с предыдущим.
Теперь я хочу удалить Perl 5.10.1 и установить Perl 5.8.8 на моем Ubuntu 10.04. Я буду признателен, если кто-то уже сделал это или поделится необходимыми шагами / командами, чтобы сделать это.
3 ответа
Возможно, вы можете решить проблему, отклонившись от apt
, Сохраните perl дистрибутива ОС как есть и используйте http://perlbrew.pl/ для установки альтернативных версий perl в другом месте, скажем, в /opt/perl
,
Затем используйте оболочки оболочки и так далее, чтобы вызвать perlbrew для выбора соответствующего perl в соответствующее время.
Да - вам нужно обновить все модули Perl при изменении базовой версии Perl.
apt-get install perl-cgi
и так до тех пор, пока все не получится.
В целом используемая вами система упаковки APT поддерживает смешивание версий из разных дистрибутивов, но это также может сильно испортить.
Если вы рискуете разрушить вашу систему, попробуйте это (не проверено):
- Добавьте строку с "выносливым" вместо кармического к вашему
/etc/apt/sources/list
(кармическая линия все еще остается там) aptitude install perl -t hardy
следует установить версию Perl с Hardy