Опубликовано : admin в (PHP, Настройка сервера)

Установка PHP с поддержкой fork()

Теги: , , ,

У меня возникла необходимость установки php5 на сервер с установленной панелью Directadmin. Причем для работы одного из скриптов ему необходимо чтобы php был скомпилирован с поддержкой pcntl.
Казалось бы никаких проблем. У директадмина есть очень хороший форум. После недолгих поисков была найдена следующая ветка . Но еще нужно разрешить поддержку pcntl.

Редактируем файл
vi /usr/local/directadmin/customapache/configure.php (_ap2 для Apache 2)
и в конец файла добавляем –enable-pcntl
Файл должен выглядеть так:

#!/bin/sh
./configure \
–with-apxs \
–with-curl \
–with-curl-dir=/usr/local/lib \
–with-gd \
–with-gd-dir=/usr/local \
–with-gettext \
–with-jpeg-dir=/usr/local/lib \
–with-kerberos \
–with-mcrypt \
–with-mhash \
–with-mysql=/usr \
–with-pear \
–with-png-dir=/usr/local/lib \
–with-xml \
–with-zlib \
–with-zlib-dir=/usr/local/lib \
–with-zip \
–with-openssl \
–enable-bcmath \
–enable-calendar \
–enable-ftp \
–enable-calendar \
–enable-ftp \
–enable-magic-quotes \
–enable-sockets \
–enable-track-vars \
–enable-mbstring \
–enable-memory-limit \
–enable-pcntl

После чего продолжаем установку по ссылке в форуме.

- Download php to a temporary directory (http://www.php.net/downloads.php)
- cd [the temporary directory]
- tar zxvf php-5.x.x.tar.gz
- cd php-5.x.x
- /usr/local/directadmin/customapache/configure.php

Но тут возникает ошибка.
После выполнения /usr/local/directadmin/customapache/configure.php скрипт выдает ошибку.
pcntl: fork() not supported by this platform
Путем часового копания в google был найден ответ:

cd /usr/local/directadmin/customapache/libmcrypt-2.5.7/libltdl
./configure --enable-ltdl-install
make
make install

То есть libmcrypt которая идет в составе директадмина компилируется без поддержки lltdl. В результате вываливается вышеприведенная ошибка.
Дальше уже все как в форуме:
Для Apache 1.x

/usr/local/directadmin/customapache/configure.php

Для Apache 2.x

/usr/local/directadmin/customapache/configure.php_ap2

#на этот раз он выполняется без ошибок
make
make install
После чего все начинает работать.

Оставить комментарий