Как использовать расширение Pthreads PHP в Ubuntu

У меня проблемы с расширением Pthreads PHP. Я скомпилировал PHP с включенным ZTS (--enable-maintainer-zts) и установил pthreads через pecl, а также попытался вручную скомпилировать расширение.

Кажется, я не знаю, как его использовать. Я предполагал, что смогу использовать класс Thread в PHP, как и любой другой встроенный класс, но безуспешно, поскольку PHP его не распознает. Функции POSIX, похоже, работают.

Я использую Ubuntu 12.10 Server 64-bit с mod_php 5.4.6.

1 ответ

Решение

Если вы не можете получить доступ к классам расширений, он не загружается.

Я думаю, что вы открыли сообщение об ошибке, на что я ответил, что ваша строка конфигурации искажена.

Строка конфигурации, которую вы хотите использовать:

./configure --enable-pthreads --enable-maintainer-zts

Приведенная выше команда создаст pthreads как DSO.

./configure --enable-pthreads=static --enable-maintainer-zts

Приведенная выше команда будет статически встраивать pthreads в PHP.

Оба одинаково поддерживаются 5.3, 5.4 и даже 5.5.

Кроме того, если вы перезаписываете свою системную установку, вам следует использовать --prefixНапример, если ваш php исполняемый файл находится на /usr/bin (который вы можете выяснить с помощью "которого php"), то --prefix=/usr перезапишет вашу систему установки.

Очистите ваши старые установки (делайте деинсталляцию, если исходные коды все еще доступны). Начните заново, убедитесь, что вы перезаписываете установку системы или полностью ее изолируете.

Пожалуйста, обновите отчет об ошибке, когда вы уже разобрались.

Другие вопросы по тегам