Pear (PHP Extension and Application Repository) - полезный инструмент для установки расширений и репозиториев PHP в Linux, Max и Windows. Он позволяет добавлять функциональные возможности в PHP без риска случайного обнаружения кода в Интернете. Если вы не знаете, добавление кода, не зная, что источник надежен, может открыть любое количество уязвимостей для вашего сервера, поскольку PHP может получить доступ к другим программам, утилитам и ресурсам.
Сегодня я хотел установить пакет из репозиториев PECL. Вместо того, чтобы загружать, компилировать и устанавливать непосредственно из PECL, я решил, что я продолжу и установлю Pear, поскольку это ресурс, который я часто использую. Одна из проблем, которая может возникнуть после установки Pear, - это отсутствие зависимостей.
Вот процесс, который я использовал для установки Pear на Ubuntu 16.04.
cd ~ / src
wget http://pear.php.net/go-pear.phar
sudo php go-pear.phar
Я изменил параметр 9, чтобы отразить путь к моим веб-сайтам, но в остальном изменять какие-либо параметры не нужно.
Чтобы проверить установку, запустите
версия груши
В дополнение к перечислению ожидаемого результата:
У меня также есть (очень) длинный список ошибок, небольшая часть на изображении ниже:
Проблема связана с snmp и связанными с ним mib. Исправить зависимости очень просто. Ниже приведена команда для установки необходимых зависимостей:
sudo apt-get install libsnmp-dev libsnmpkit-dev snmp-mibs-downloader
Как только это будет завершено, проверьте установку с версией груши, на этот раз вывод будет:
Теперь, чтобы обновить Pear, чтобы получить доступ к репозиториям:
sudo pear update-каналы
Что нужно иметь в виду, если вы используете PHP 7.0, многие расширения еще не обновлены для соответствия новой версии. Если вы планируете установить определенные модули, вам может потребоваться установить дополнительную версию PHP.
Мне нужен модуль журнала, поэтому я буду использовать пример pear / Log.
sudo pear install –alldeps pear / Log
При использовании –alldeps все рекомендуемые дополнительные модули (такие как pear / SASL2) автоматически устанавливаются как часть установки, в противном случае вам придется добавлять их по отдельности. Как отмечено в последней строке, вы можете добавлять определенные надстройки, которые по умолчанию не считаются необходимыми, например:
sudo pear install MDB2 # mysqli
Если вам не хватает каких-либо дополнительных зависимостей, они будут перечислены в случае сбоя компиляции, а также любые рекомендуемые пакеты, такие как
sudo pear install pecl / spidermonkey
К сожалению, libjs нельзя напрямую загрузить в виде пакета. Чтобы найти пакеты, которые предоставят его, вам необходимо установить бесценную программу:
sudo apt-get install apt-file
sudo apt-file update
sudo apt-файл jsapi.h
Apt-файл - удивительно полезный инструмент для поиска зависимостей. Он возвращает список пакетов, которые предоставят jsapi.h. Загрузить и установить. Затем вы можете продолжить и установить модуль php,
sudo pear install pecl / spidermonkey
Никаких дополнительных проблем с зависимостями и хороший маленький модуль для вашего использования.
2 минуты чтения