URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 6969
[ Назад ]

Исходное сообщение
"Ошибка PHP: Undefined symbol 'php_pcre_exec'"

Отправлено Nas_tradamus , 31-Авг-10 15:49 
Здравствуйте!

FreeBSD 7.1-RELEASE GENERIC amd64
PHP Version 5.2.14
Apache/2.2.16

Такая проблема:
Когда пытаешься создать или удалить тикет в Mantis на этой системе, вылетает внутренняя ошибка сервера. В логах Apache:

/libexec/ld-elf.so.1: /usr/local/lib/php/20060613/filter.so: Undefined symbol "php_pcre_exec"

В других скриптах регулярные выражения работают. Проблема возникла после обновления Mantis до последней версии 1.2.2 .

Уже отчаялся.
Гугл не помогает. :(


Содержание

Сообщения в этом обсуждении
"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Kibab , 31-Авг-10 15:58 
>[оверквотинг удален]
>
>FreeBSD 7.1-RELEASE GENERIC amd64
>PHP Version 5.2.14
>Apache/2.2.16
>
>Такая проблема:
>Когда пытаешься создать или удалить тикет в Mantis на этой системе, вылетает
>внутренняя ошибка сервера. В логах Apache:
>
>/libexec/ld-elf.so.1: /usr/local/lib/php/20060613/filter.so: Undefined symbol "php_pcre_exec"

Для PHP5 версия API 20090626. Проверьте, что загружается действительно нужный модуль, ибо 20060613 -- это PHP4.


"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Nas_tradamus , 31-Авг-10 16:15 
>>[оверквотинг удален]
>Для PHP5 версия API 20090626. Проверьте, что загружается действительно нужный модуль, ибо
>20060613 -- это PHP4.

Странно. У меня все модули PHP находятся именно в директории /usr/local/lib/php/20060613.
Сегодня я пересобирал PHP и модули - время создания файлов обновилось.
А директории 20090626 вообще у меня нет (сейчас специально поискал find'ом).


"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Kibab , 31-Авг-10 16:23 
>>>[оверквотинг удален]
>>Для PHP5 версия API 20090626. Проверьте, что загружается действительно нужный модуль, ибо
>>20060613 -- это PHP4.
>
>Странно. У меня все модули PHP находятся именно в директории /usr/local/lib/php/20060613.
>Сегодня я пересобирал PHP и модули - время создания файлов обновилось.
>А директории 20090626 вообще у меня нет (сейчас специально поискал find'ом).

Прошу прощения, действительно, наврал. 20090626 -- это PHP 5.3.
Тогда попробуйте пересобрать php52-pcre. А лучше и его, и devel/pcre. Есть ощущение, что у Вас эти два порта сейчас out of sync.


"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Kibab , 31-Авг-10 16:23 
>[оверквотинг удален]
>>>Для PHP5 версия API 20090626. Проверьте, что загружается действительно нужный модуль, ибо
>>>20060613 -- это PHP4.
>>
>>Странно. У меня все модули PHP находятся именно в директории /usr/local/lib/php/20060613.
>>Сегодня я пересобирал PHP и модули - время создания файлов обновилось.
>>А директории 20090626 вообще у меня нет (сейчас специально поискал find'ом).
>
>Прошу прощения, действительно, наврал. 20090626 -- это PHP 5.3.
>Тогда попробуйте пересобрать php52-pcre. А лучше и его, и devel/pcre. Есть ощущение,
>что у Вас эти два порта сейчас out of sync.

А, ещё php52-filter -- он точно out of sync с тем, что стоит в системе.


"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Nas_tradamus , 31-Авг-10 16:32 
Проблему решил так:

cd /usr/ports/security/php52-filter
make install


Почему я полдня не мог решить проблему? Потому что где-то прочел, что модуль filter.so входит в ядро PHP.

Оказывается, filter.so почему-то не идет в комплекте с новой версией php и даже его нет в мета-порте /usr/ports/lang/php52-extensions, и ставить его нужно отдельно.


Всем спасибо за помощь! )

Правда, проблему успел решить сам.

Ну, может кому пригодится данный топик.


"Ошибка PHP: Undefined symbol 'php_pcre_exec'"
Отправлено Sergei , 12-Фев-11 03:05 
> Ну, может кому пригодится данный топик.

Пригодился, спасибо :)