Я пытаюсь установить пакет с помощью композитора. Это не удается с сообщением об ошибке ниже.
Problem 1
- zendframework/zend-soap 2.7.0 requires ext-soap * -> the requested PHP extension soap is missing from your system.
- zendframework/zend-soap 2.7.0 requires ext-soap * -> the requested PHP extension soap is missing from your system.
- zendframework/zend-soap 2.7.0 requires ext-soap * -> the requested PHP extension soap is missing from your system.
- Installation request for zendframework/zend-soap 2.7.0 -> satisfiable by zendframework/zend-soap[2.7.0].
sudo yum установить php-zendframework-zend-soap
Это команда, которую я запускаю для установки zend-soap. Однако на этом заканчивается сообщение об ошибке ниже.
--> Running transaction check
---> Package php-container-interop.noarch 0:1.2.0-3.el7 will be installed
---> Package php-psr-http-message.noarch 0:1.0.1-1.el7.remi will be installed
---> Package php-soap.x86_64 0:5.6.40-14.el7.remi will be installed
--> Processing Dependency: php-common(x86-64) = 5.6.40-14.el7.remi for package: php-soap-5.6.40-14.el7.remi.x86_64
---> Package php-zendframework-zend-eventmanager.noarch 0:2.6.3-1.el7.remi will be installed
--> Finished Dependency Resolution
Error: Package: php-soap-5.6.40-14.el7.remi.x86_64 (remi-php56)
Requires: php-common(x86-64) = 5.6.40-14.el7.remi
Installed: php-common-7.2.20-1.el7.remi.x86_64 (@remi-php72)
php-common(x86-64) = 7.2.20-1.el7.remi
Available: php-common-5.4.16-48.el7.x86_64 (base)
php-common(x86-64) = 5.4.16-48.el7
Available: php-common-5.4.45-18.el7.remi.x86_64 (remi)
php-common(x86-64) = 5.4.45-18.el7.remi
Available: php-common-5.6.40-13.el7.remi.x86_64 (remi-php56)
php-common(x86-64) = 5.6.40-13.el7.remi
Available: php-common-5.6.40-14.el7.remi.x86_64 (remi-php56)
php-common(x86-64) = 5.6.40-14.el7.remi
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Я пробовал запустить его с помощью --skip-broken. Это не устанавливает недостающее zend-мыло. Его пропускают. Я прогнал второе предложение, и ничего не произошло. Кто-нибудь знает, как это установить на CentOS 7.
Installed: php-common-7.2.20-1.el7.remi.x86_64 (@remi-php72)
Поскольку вы установили PHP 7.2 из репозитория remi-php72, вы должны оставить этот репозиторий включенным, чтобы гарантировать, что будет найдено дополнительное расширение.
Это также гарантирует, что вы получите исправления ошибок и обновления безопасности (последняя версия - 7.2.30)
Как объяснил волшебник.
yum-config-manager --enable remi-php72
А еще можно отключить ненужный репозиторий
yum-config-manager --disable remi-php56
А потом
yum install php-soap
Вам необходимо установить расширение PHP soap. На CentOS 7 должно работать так:
yum install php-soap
После завершения установки вы должны найти файл с именем soap.ini
в /etc/php.d
и сам модуль в /usr/lib64/php/modules
.
Затем перезапустите сервер Apache (или любой другой веб-сервер, который вы используете).
systemctl restart httpd
Наконец, вы можете установить свой пакет через Composer, как вы пытались. На этот раз пакет необходимо скачать и установить.