Próbuję zainstalować php 5.4 lub 5.6 na serwerze Amazon Linux 2 za pomocą tego polecenia:
yum install php54
To jest wyjście:
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
Wynik sugeruje, że wie, które pakiety zawierają zależności, o których wspominają błędy, ale ich nie instaluje.
Wcześniej zainstalowałem repozytoria epel i remi, ponieważ amazon-linux-extras nie ma wersji php niższej niż 7.1.
Kiedy wykonuję:
yum list installed | grep "php"
Nie otrzymuję wyników, więc nie sądzę, aby istniał konflikt z istniejącymi pakietami.
Próbowałem też:
yum install php54 --disablerepo="*" --enablerepo="remi"
aby upewnić się, że nie ma konfliktów repozytorium.
EDYTUJ: Próbowałem także innych wersji polecenia:
yum install php70
yum install php71
yum install php72
Wszystkie miały podobne błędy w odniesieniu do tych samych wymagań „lib *”.
Jakiś pomysł, dlaczego tak się dzieje i jak to naprawić?
linux
php
amazon-ec2
yum
Cohaven
źródło
źródło
Odpowiedzi:
Usunąłem repozytorium amazon, które było potrzebne do znalezienia zależności lib * podczas rozwiązywania problemów i zmuszania yum do wybrania repo repo. Po ponownym dodaniu polecenie zadziałało.
Jednak teraz muszę dowiedzieć się, jak skonfigurować php, ponieważ te pakiety nie utworzyły pliku php.ini, który został usunięty po odinstalowaniu php7.1 amazona.
źródło