Нужно объяснение относительно расширений PHP - PullRequest
1 голос
/ 01 февраля 2011

Вот краткий обзор:

Я только что закончил компиляцию PHP 5.3.5 и попытался скомпилировать "--with" несколько различных расширений. Среди необходимых мне расширений mbstring и intl . Я могу вручную phpize, настроить, сделать, сделать установку расширение 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 не имеет никакого эффекта .

1 Ответ

0 голосов
/ 01 февраля 2011

С php.net , пробовали ли вы

Если ваш ICU установлен на нестандартный каталог, то вы могли бы хотите указать его местоположение в Переменная среды LD_LIBRARY_PATH чтобы динамический компоновщик мог его найти: $ экспорт LD_LIBRARY_PATH = / opt / icu / lib

В противном случае, если PHP и ICU установлены по умолчанию, тогда дополнительные опции «configure» не требуется.

...