Установка PHP-SQLite в CentOS из SRC-RPM

Оригинал Cyrus на Welinux.ru

0.250 Предисловие

Как вы, наверное, уже догадались, в репозитории CentOS нет данного модуля. А PHP в CentOS(как и в RedHat) посчитали необходимым собрать с ключом --without-sqlite.

В Google довольно часто спрашивают о решении этой проблемы. И пока я искал решение(думал всё же найти необходимый rpm-пакет) вычитал следующие подробности:
1) этот вопрос актуален для RHEL/CentOS/Fedora Core.
2) многие пользователи не знают репозитория, где бы можно было
найти готовый вариант для CentOS. (хотя для Mandriva и OpenSUSE я видел таковые).Часто предлагают просто собрать всё из исходников.

Решение под катом...

Потом всё-же был найден отличный репозиторий для CentOS. Там находится много полезных программ(в том числе оттуда был поставлен tmux). Однако, версия php-sqlite, которая лежит там, не собирается под CentOS 5.5

Собрать модуль из исходников сходу не удалось - при компиляции выдавал какие-то ошибки. Да и не очень-то хотелось захламлять пакетную систему таким образом.

И после нескольких часов поиска всё же нашёл то, что действительно могло подойти. В списке рассылки rpmforge предлагался небольшой апдейт пакета с того самого репозитория.
Осталось собрать нужный пакет. И хотя раньше с rpm-based дистрибутивами практически не работал - сделать это оказалось довольно просто.

1. Сборка RPM

Для начала необходимо установить сборщик:

sudo yum install rpm-build


и если планируется собрка SRPMs, то ещё

sudo yum install redhat-rpm-config


Далее создадим окружение в /usr/src/redhat

mkdir -p /usr/src/redhat/{BUILD,RPMS,SOURCES,SPECS,SRPMS}


Теперь всё готово для установки. Качаем необходимый нам пакет.

И распакуем его в папке /usr/src/redhat/BUILD при помощи команды:

cd  /usr/src/redhat/BUILD ; rpm2cpio php-sqlite-1.0.2-3.rf.src.rpm | cpio -idmv


У нас появится интересующий нас файл - php-sqlite.spec

Именно его заменяем на предложенный тут updated php-sqlite.spec

После этого скрипт по установке ещё попросил скопировать исходники нужной версии PHP:

cd  /usr/src/redhat/SOURCES ; wget http://ru.php.net/get/php-5.2.14.tar.gz/from/this/mirror


Осталось только собрать сам пакет. Собирать можно с подходящими вам другими ключами, а у меня получилось так:

rpmbuild -bb --clean --target x86_64 php-sqlite.spec


И установить его:

rpm -ivh php-sqlite-2.0-1.rf.x86_64.rpm





Вас также может заинтересовать:

Установка Centos 6
Установка GeoIP (Centos, Red Hat)
Установка 1C 8.2 под PostgreSQL на CentOS 6.3
Установка GitWeb на Centos 5.5
Сборка и установка MemcacheDB на CentOS 5.5
Удаленная установка CentOS или Fedora