Представим ситуацию: нужно добавить модуль, без пересборки всего php (так называемый shared модуль). То есть по сути, мы скомпиллируем *.so и просто подгрузим его через php extensions.
Плюсы:
– не надо пересобирать заново весь php
– при желании можно быстро отключить
Минусы:
– работает медленнее
Скачиваем исходники php, распаковываем и переходим в папку с исходниками. Далее в папке ext выбираем папку с нужным модулем и переходим в неё. Пример:
$ wget php5.3.9.tar.bz2
$ tar xjf php5.3.9.tar.bz2
$ cd php-5.3.9-src/ext/xsl
Далее выполняем
$ phpize
Команда phpize используется для подготовки окружения PHP-расширения.
Теперь собственно процесс компиляции (добавлены флаги для 64-битной поддержки):
$ CFLAGS=-m64 CPPFLAGS=-m64 CCASFLAGS=-m64 LDFLAGS=-m64 ./configure
$ gmake
# gmake install
В данном примере использовался компилятор gcc 4.5, поэтому мы использовали gmake.
2 коментарі “[PHP] Добавляем поддержку модуля без пересборки”
а ось то какая? в bsd я ни когда не пересобирал весь пхп, а всегда ставил только so.
на саляре такой изврат?
Вообще-то ось – любая. Но мне именно нужно было собрать под Solaris. Касательно пересборки – можно и не пересобирать, зато с пересборкой будет быстрее. На высконагруженных проэктах это ощутимо.