Вот краткий обзор:
Я только что закончил компилировать PHP 5.3.5 и попытался скомпилировать "--with" с рядом различных расширений. Среди расширений, которые мне нужны, есть mbstring и intl. Я могу вручную phpize, configure, make, make install расширение mbstring, и, похоже, оно работает нормально. Однако я не могу сделать то же самое для intl.
Моя строка ./configure выглядит так:
./configure --with-openssl --with-pcre-regex --enable-calendar
--with-curl --enable-exif --enable-ftp --with-gd
--with-mhash --enable-mbstring --with-mysql --enable-zip
--enable-intl --with-icu-dir=...
Код компилируется без проблем: ./configure... make, make install
Я использовал php.ini-production для своей конфигурации php.ini и настроил Apache для использования php-cgi для определенного домена, и это тоже хорошо работает.
Быстрый:
<?php phpinfo() ?>
показывает, что на самом деле я использую более новую версию PHP. Однако расширения, указанные в строке "./configure...", нигде не отображаются на информационной странице PHP.
После небольшого поиска я обнаружил, что могу запустить phpize для одного расширения в исходной папке PHP, затем скомпилировать сборку определенного модуля и установить его в каталог расширений PHP. После добавления:
extension=MY_EXT
в моем php.ini расширение появилось на моей странице phpinfo().
Итак, кто-нибудь может объяснить, почему --with-mbstring не влияет на мою компиляцию?
У меня не было проблем с компиляцией для расширения intl, но перемещение файла intl.so в мой каталог расширений PHP и добавление строки расширения в мой php.ini не дало никакого эффекта.
--with-mbstring
не действует. ты имеешь в виду--enable-intl
? - person brian_d   schedule 01.02.2011