21 января 2011 г.

Установка и обновление Perl 5.8.8 до версии Perl 5.10.0 на CentOS Linux

Так как в пакетах текущей версии CentOS лежит Perl версии 5.8.8, а собраноой последней версии Perl 5.10 нет, нам придется устанавливать Perl из исходников и обновить симлинк.
Для того чтобы скомпилировать Perl нам понадобится установить из пакетов make и gcc. Это просто...
#yum install  make gcc
Затем качаем исходник от сюда http://www.cpan.org/src/perl-5.10.1.tar.gz

Распаковывем архив
#tar -xf perl-5.10.1.tar.gz
Запускаем конфигуратор, обязательно с поддержкой threads.
#sh Configure -de -Dusethreads 
Ну по порядку:
#make

#make test

#make install
На этом установка окончена, если возникли ошибки, решаем их, скорее всего это решится установкой недостающих зависимостей или установкой последних версий требуемых пакетов.

Чтобы у нас в системе работал Perl 5.10 по умолчанию, повесим символьную ссылку, при этом скопируем симлинк на старую версию Perl в /usr/bin/perl58:
#mv /usr/bin/perl /usr/bin/perl58
#ln -s /usr/local/bin/perl /usr/bin/perl
Удалять старую версию Perl 5.8.8 не стоит, т.к. данный пакет имеет много зависимостей, вернее много других пакетов зависят от Perl, поэтому оставим как есть.

Проверяем версию:
#perl --version 
Должно быть:
This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi

Чтобы исключить проблемы при обновлении через yum, добавьте в файл  /etc/yum.conf строчку:
exclude=perl
Возможно, для функционирования ваших скриптов вам понадобится установить дополнительные модули и расширения для Perl, это просто делать через  CPAN:
#perl -MCPAN -e "install Net::DirectConnect"
Вот так мы установили модуль Net::DirectConnect.
Установим часто используемые библиотеки:
#perl -MCPAN -e "install DBI, Bundle::DBD::mysql, LWP, URI, FCGI"

4 комментария:

  1. Спасибо! Помогло. Установил)

    ОтветитьУдалить
  2. Делайте тоже самое, только скачайте версию какую вам нужно, либо установите перл из пакетов.

    ОтветитьУдалить
  3. при выполнении make install выдал со=ледующее;

    Warning: perl appears in your path in the following locations beyond where
    we just installed it:
    /usr/bin/perl

    ОтветитьУдалить