?

Log in

No account? Create an account
Previous Entry Share Next Entry
Как установить PECL-расширение во FreeBSD
coderua
Что такое PECL и с чем его едят я коротко описал в предыдущем посте "Как установить PECL-расширение в Ubuntu"

В ОС FreeBSD PECL-расширения очень просто устанавливаются из портов.
Имя порта формируется по следующему принципу: pecl-<имя_pecl_пакета>.
Например, если нужно установить пакет pecl_http, то имя порта будет pecl-http, или libevent - порт будет называться pecl-libevent.


1. Задача.
Установить необходимые расширения. В нашем случае это pecl_http
Ошибка которую выдает веб-сервер и свидетельствует, что расширение не установлено, выглядит вот так:
Fatal error: Call to undefined function http_get() in some_file.php on line xxx

3. Исходная система.
FreeBSD 8.2-RELEASE, Apache-2.2.17_1, PHP 5.3.8 и т.п.

4. Процесс установки.
  1. Ищем необходимый пакет:
    whereis pecl-http
    Результат выдаст нам путь по которому находится порт pecl-http: /usr/ports/www/pecl-http

  2. Перейдем в директорию с портом:

    cd /usr/ports/www/pecl-http

  3. Произведем установку (не забываем, что ее необходимо выполнять от суперпользователя - root):

    # make install clean

  4. Если все пройдет без ошибок, то вы увидите на экране приблизительно следующую строку:

    ===> Cleaning for pecl-http.

    В файл /usr/local/etc/php/extensions.ini будет добавлена строка, подключающая библиотеку:
    extension=http.so
  5. Перезапустим веб-сервер Apache
    # apachectl restart