Intereting Posts
предотвращать автоматическое добавление косой черты при использовании parse_str Использование PDO для извлечения определенных значений из базы данных mysql с использованием php Как использовать Zend Library без установки Zend Framework Заменить все кавычки, которые не указаны в html-тегах Синтаксис PHP для результата функции разыменования Как вы можете сравнивать наборы чисел и получать наиболее релевантные результаты с использованием MySQL и PHP? Параметр.yml для пакета, symfony2 Как запустить скрипт оболочки с живой обратной связью с PHP? Вычисление общего количества часов из базы данных Использовать laravel на azure webapp file_get_contents и CURL не могут открыть конкретный веб-сайт Обновите содержимое div только в том случае, если в базу данных добавлен новый контент PHP и пути – относительно файла и не включая код Самая длинная общая подстрока с неправильной переносимостью символов Случайные ошибки PHP Fatal error: Out of memory

Проблема установки PHP pthreads на сервере Ubuntu

Я пытаюсь установить pthreads на моем сервере Ubuntu 12.04, где работает PHP Version 5.5.8-3 + sury.org ~ exact + 2. Насколько мне известно, это была стандартная установка через apt-get.

Затем я пытаюсь запустить

sudo pecl install pthreads 

это приводит к следующей ошибке: проверка проверки на ZTS … configure: ошибка: pthreads требует ZTS, пожалуйста, перекомпилируйте PHP с включенным ZTS

Я понимаю, что это означает, что PHP не был скомпилирован с флагом –enable-maintiner-zts ./config.

Я НЕ знаю, как это сделать, это перекомпилировать PHP с этим флагом, а затем перезаписать мою текущую установку PHP, надеюсь, не нарушая ничего.

Я сделал некоторые поисковые запросы по этому вопросу, но несколько руководств, которые я нашел, чрезвычайно высоки, старые или не очень полные, и, к сожалению, я по-прежнему новичок, когда дело доходит до Linux.

Положите все свои оправдания в коробку … сожгите коробку и забудьте о них.

Вы занимаетесь довольно продвинутым PHP и уже правильно определили проблему … не бойтесь, просто взломайте …

Вот некоторые вопросы о настройке PHP для перезаписывания вашей установки …

Допустим, у меня есть PHP на / usr, scandir на /etc/php.d и настройка на /etc/php.ini

 ./configure --prefix=/usr --bindir=/usr/bin --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d 

Эта минимальная конфигурация перезапишет мою установку, я включил -bindir, потому что, установив этот единственный параметр конфигурации, вы можете изолировать установку PHP на, например, / opt / php-zts.

Вам требуется, по крайней мере, дополнительная опция

 --enable-maintainer-zts 

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

Если расширение не должно строиться, это обычно происходит из-за того, что заголовки для библиотеки, в которую добавляется расширение, недоступны в вашей системе, обычно бывает, что установка dev или пакета devel с помощью менеджера пакетов distros позволит построить для успеха.

После того, как у вас есть полная полная сборка, его хороший совет – скопировать config.nice куда-нибудь разумным, чтобы у вас было это на будущее.

Наконец, не всегда желательно перезаписать установку в вашей системе, это может использоваться другим программным обеспечением, поэтому я обычно говорю, что лучше изолировать установку, а вот config.nice verbatim из изолированной установки на моей машине:

 #! /bin/sh # # Created by configure './configure' \ '--with-apxs2=/opt/php-zts/bin/apxs' \ '--prefix=/opt/php-zts' \ '--bindir=/opt/php-zts/bin' \ '--with-config-file-dir=/opt/php-zts' \ '--with-config-file-scan-dir=/opt/php-zts/modules.d/' \ '--with-curl=shared,/usr' \ '--with-zlib' \ '--with-libxml2' \ '--enable-simplexml' \ '--with-mysql=mysqlnd' \ '--with-pdo-mysql=mysqlnd' \ '--enable-gd-native-ttf' \ '--with-mysqli' \ '--disable-phar' \ '--enable-shared' \ '--enable-maintainer-zts' \ '--enable-opcache' \ '--enable-sockets' \ '--with-curl=shared' \ '--enable-pcntl=shared' \ '--enable-mbstring' \ "$@"