Как исправить проблемы с установкой Pear после установки из репозиториев



Попробуйте наш инструмент устранения неполадок

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, чтобы отразить путь к моим веб-сайтам, но в остальном изменять какие-либо параметры не нужно.

Чтобы проверить установку, запустите

версия груши

В дополнение к перечислению ожидаемого результата:

груша инсталляция - 1

У меня также есть (очень) длинный список ошибок, небольшая часть на изображении ниже:

груша инсталляция - 2

Проблема связана с snmp и связанными с ним mib. Исправить зависимости очень просто. Ниже приведена команда для установки необходимых зависимостей:

sudo apt-get install libsnmp-dev libsnmpkit-dev snmp-mibs-downloader

Как только это будет завершено, проверьте установку с версией груши, на этот раз вывод будет:

инсталляция груша - 3

Теперь, чтобы обновить Pear, чтобы получить доступ к репозиториям:

sudo pear update-каналы

инсталляция груша - 4

Что нужно иметь в виду, если вы используете PHP 7.0, многие расширения еще не обновлены для соответствия новой версии. Если вы планируете установить определенные модули, вам может потребоваться установить дополнительную версию PHP.

Мне нужен модуль журнала, поэтому я буду использовать пример pear / Log.

sudo pear install –alldeps pear / Log

инсталляция груша - 5

При использовании –alldeps все рекомендуемые дополнительные модули (такие как pear / SASL2) автоматически устанавливаются как часть установки, в противном случае вам придется добавлять их по отдельности. Как отмечено в последней строке, вы можете добавлять определенные надстройки, которые по умолчанию не считаются необходимыми, например:

sudo pear install MDB2 # mysqli

инсталляция груша - 6

Если вам не хватает каких-либо дополнительных зависимостей, они будут перечислены в случае сбоя компиляции, а также любые рекомендуемые пакеты, такие как

sudo pear install pecl / spidermonkey

инсталляция груша - 7

К сожалению, 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 минуты чтения