Не так давно версией перла по умолчанию в портах стала 5.12. Процесс обновления уже установленного порта подробно описан в файле UPDATING, тем не менее выкладываю пошаговую инструкцию:
- Первым делом нужно обновить дерево портов до актуальной версии (portsnap, cvsup, csup)
- Проверим pkgdb: pkgdb -Ff
- Установим новую версию: env DISABLE_CONFLICTS=1 portupgrade -o lang/perl5.12 -f perl-5.10.\*
- Пересоберем все порты, зависящие от перла (долго): portupgrade -fr perl
Сделал, как написано, а все-равно на команду
ОтветитьУдалитьperl -v
выдает 5.10.1
Даже в /etc/make.conf поменял номер версии вручную, все равно perl -v выдает 5.10.1
Смотрите вывод pkg_info, если там 5.12, значит обновлние прошло штатно. Если нет, то обратите внимание на третий шаг - именно там происходит смена версии
УдалитьУстановил таким образом:
ОтветитьУдалитьСначала из порта perl5.12 выполнил
env DISABLE_CONFLICTS=1 make install
Потом уже сделал, как описано выше.
Я слабо разбираюсь в Unix-системах, так что либо автор по-умолчанию подразумевал, что этот шаг уже сделан, либо я совершил что-то варварское)
P.S. pkg_info | grep 'perl' я делал, выдавал только 10-ю версию, хотя инструкцию по обновлению выполнял всю по шагам.
А говорите все сделали по инструкции. Где у меня написано, что нужно делать env DISABLE_CONFLICTS=1 make install
УдалитьСпасибо, очень помогло!
ОтветитьУдалитьскажите, а portupgrade -o lang/perl5.20 -f perl-5.10.\* проканает?
ОтветитьУдалитьВ теории - да. На практике есть только один способ выяснить.
УдалитьБез меня ставили VLC на сервер и после этого пошла ошибка работы перла.
УдалитьPFlogsumm выдает:
/usr/local/lib/perl5/5.16/mach/CORE/libperl.so: Undefined symbol "_ThreadRuneLocale
Версия перла:
# pkg_info |grep perl
p5-DBI-1.616_1 The perl5 Database Interface. Required for DBD::* modules
p5-Term-ReadKey-2.30 A perl5 module for simple terminal control
perl-threaded-5.12.4_3 Practical Extraction and Report Language
perl5-5.16.3_6 Practical Extraction and Report Language
Делал обновление портов и потом portupgrade -fr pflogsumm. Также делал portupgrade -fr perl.
Ничего не помогло..
Что мне надо проверить и сделать?
Во-первых, у вас два перла. Как вы этого добились? Удалите один, а второй обновите до дефолтной версии 5.18
Удалить