ням установить php ошибки зависимости

389
Cohaven

Я пытаюсь установить php 5.4 или 5.6 на сервер Amazon Linux 2 с помощью этой команды:

yum install php54 

Это вывод:

Loaded plugins: extras_suggestions, langpacks, priorities, update-motd 170 packages excluded due to repository priority protections Resolving Dependencies --> Running transaction check ---> Package php54.x86_64 0:2.1-4.el7.remi will be installed --> Processing Dependency: php54-runtime(x86-64) = 2.1-4.el7.remi for package: php54-2.1-4.el7.remi.x86_64 --> Processing Dependency: php54-php-pear >= 1:1.10 for package: php54-2.1-4.el7.remi.x86_64 --> Processing Dependency: php54-php-common(x86-64) >= 5.4.45 for package: php54-2.1-4.el7.remi.x86_64 --> Processing Dependency: php54-runtime for package: php54-2.1-4.el7.remi.x86_64 --> Processing Dependency: php54-php-cli(x86-64) for package: php54-2.1-4.el7.remi.x86_64 --> Running transaction check ---> Package php54-php-cli.x86_64 0:5.4.45-15.el7.remi will be installed --> Processing Dependency: libtinfo.so.5()(64bit) for package: php54-php-cli-5.4.45-15.el7.remi.x86_64 --> Processing Dependency: libncurses.so.5()(64bit) for package: php54-php-cli-5.4.45-15.el7.remi.x86_64 ---> Package php54-php-common.x86_64 0:5.4.45-15.el7.remi will be installed ---> Package php54-php-pear.noarch 1:1.10.6-1.el7.remi will be installed --> Processing Dependency: php54-php-xml for package: 1:php54-php-pear-1.10.6-1.el7.remi.noarch --> Processing Dependency: php54-php-posix for package: 1:php54-php-pear-1.10.6-1.el7.remi.noarch ---> Package php54-runtime.x86_64 0:2.1-4.el7.remi will be installed --> Processing Dependency: environment-modules for package: php54-runtime-2.1-4.el7.remi.x86_64 --> Running transaction check ---> Package environment-modules.x86_64 0:3.2.10-0.el7.remi will be installed --> Processing Dependency: libtcl8.5.so()(64bit) for package: environment-modules-3.2.10-0.el7.remi.x86_64 ---> Package php54-php-cli.x86_64 0:5.4.45-15.el7.remi will be installed --> Processing Dependency: libtinfo.so.5()(64bit) for package: php54-php-cli-5.4.45-15.el7.remi.x86_64 --> Processing Dependency: libncurses.so.5()(64bit) for package: php54-php-cli-5.4.45-15.el7.remi.x86_64 ---> Package php54-php-process.x86_64 0:5.4.45-15.el7.remi will be installed ---> Package php54-php-xml.x86_64 0:5.4.45-15.el7.remi will be installed --> Finished Dependency Resolution Error: Package: environment-modules-3.2.10-0.el7.remi.x86_64 (remi-safe) Requires: libtcl8.5.so()(64bit) Error: Package: php54-php-cli-5.4.45-15.el7.remi.x86_64 (remi-safe) Requires: libncurses.so.5()(64bit) Error: Package: php54-php-cli-5.4.45-15.el7.remi.x86_64 (remi-safe) Requires: libtinfo.so.5()(64bit) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest 

Вывод предполагает, что он знает, какие пакеты содержат зависимости, упомянутые в ошибках, но не устанавливает их.

Ранее я устанавливал репозитории epel и remi, так как amazon-linux-extras не имеет версии php ниже 7.1.

Когда я выполню:

yum list installed | grep "php" 

Я не получаю результаты, поэтому я не думаю, что есть конфликт с существующими пакетами.

Я также попробовал:

yum install php54 --disablerepo="*" --enablerepo="remi" 

чтобы убедиться, что нет конфликтов хранилища.

РЕДАКТИРОВАТЬ: я также пробовал другие версии команды:

yum install php70 yum install php71 yum install php72 

И все они имели схожие ошибки в отношении одинаковых требований "lib *".

Есть идеи, почему это происходит и как это исправить?

1
Почему вы устанавливаете версию 5.4, если текущая версия 7.2.11? Возможно, вам следует взглянуть на [этот учебник] (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-lamp-amazon-linux-2.html). harrymc 6 лет назад 0
Я действительно следовал этому руководству в первый раз, думая, что обновление с 5.3 до 7.1 не будет проблемой, однако, для работы одной из наших библиотек веб-сайтов нужна версия php ниже 7.0. Обновление этой библиотеки потребует больше работы, чем я могу сэкономить прямо сейчас, так как потребуется изменить большой объем кода, поэтому мне придется вернуться к обновлению до версии 7 в php в ближайшем будущем. Cohaven 6 лет назад 0
Я предполагаю, что вы сталкиваетесь с проблемами зависимости, потому что этой старой версии нужны старые библиотеки. Лучше проверить, существуют ли эти старые версии в репозитории и не будут ли они конфликтовать с уже установленными версиями. harrymc 6 лет назад 0

1 ответ на вопрос

0
Cohaven

Я удалил репозиторий amazon, который был необходим для нахождения зависимостей lib *, когда я устранял неполадки и заставлял yum выбрать репо remi. После добавления, команда сработала.

Однако теперь мне нужно выяснить, как настроить php, так как эти пакеты не создавали файл php.ini, который был удален при удалении php7.1 от amazon.

Похожие вопросы