Похоже, что у меня есть версия php-common-5.2.10-1.el5.centos
новее, чем тот, который запрашивается как зависимость php-xml
когда я пытаюсь установить php-xml
с помощью yum install php-xml
. Запрошенный зависимый пакет: php-common = 5.1.6-34.el5_8
как показано rpm -qa |grep php
.
Итак, как мне заставить php-xml использовать более позднюю версию, которая у меня уже есть?
(Кажется, это основная причина проблемы в соответствующем вопросе SF: Установка php-xml жалуется на зависимость php-common, но она уже установлена (CentOS) )
Обновить
вывод:
yum repolist
rpm -qi php-common
(по запросу @ewwhite) выглядит следующим образом:
[root@dtsrvishvt2 ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.mirroring.pulsant.co.uk
* extras: centos.mirroring.pulsant.co.uk
* updates: centos.mirroring.pulsant.co.uk
Reducing CentOS-5 Testing to included packages only
Finished
repo id repo name status
base CentOS-5 - Base 2,725
c5-testing CentOS-5 Testing 0+71
extras CentOS-5 - Extras 280
updates CentOS-5 - Updates 379
repolist: 3,384
[root@dtsrvishvt2 ~]#
[root@dtsrvishvt2 ~]# rpm -qi php-common
Name : php-common Relocations: (not relocatable)
Version : 5.2.10 Vendor: CentOS
Release : 1.el5.centos Build Date: Fri 13 Nov 2009 04:36:29 PM GMT
Install Date: Tue 13 Jul 2010 11:33:44 AM GMT Build Host: builder10.centos.org
Group : Development/Languages Source RPM: php-5.2.10-1.el5.centos.src.rpm
Size : 668395 License: PHP
Signature : DSA/SHA1, Fri 22 Jan 2010 03:22:25 PM GMT, Key ID 5c37c0b17203f491
URL : http://www.php.net/
Summary : Common files for PHP
Description :
The php-common package contains files used by both the php
package and the php-cli package.
[root@dtsrvishvt2 ~]#
Не могли бы вы предоставить вывод следующих команд?
yum repolist
rpm -qi php-common
Текущая версия php-common для вашей системы CentOS 5: php-common-5.1.6-34.el5_8
. Проблема с зависимостями связана с наличием более новой версии php-common (5.2.10-1.el5.centos), чем та, которая доступна в стандартном репозитории CentOS. В yum repolist
команда поможет нам понять, откуда вы берете свои пакеты. В rpm -qi php-common
покажет нам, откуда на самом деле появился установленный в данный момент пакет.
Я предполагаю, что система была переведена на PHP 5.2 с использованием другого репо или, возможно, путем ручной установки пакета. Это было задокументировано в Интернете с использованием репозитория CentOS Testing. Если ваш пакет php-common был одноразовой установкой, вы сможете получить соответствующие пакеты php ... но это зависит от вывода вашего реполиста ...
Ты не можешь, конфетка тебе не позволит. Авторы php-xml специально хотят, чтобы версия php-common соответствовала их версии.
Ваш выбор:
5.2.10-1.el5.centos
rpm -i --nodeps
для выполнения небезопасной установки, которая может работать неправильно (так как вы не устанавливаете никаких зависимостей).Я настоятельно рекомендую один из первых двух, так как они самые простые и имеют больше шансов на правильную работу.
Вы не можете использовать php-commons версии 5.2 *, так как он был удален из-за проблем с безопасностью. Остался единственный вариант - перейти на PHP 5.3. Мне потребовалось около 4 часов, чтобы найти эту информацию в Интернете, поэтому, надеюсь, это поможет кому-то другому.