Обновление Yum жалуется на зависимость (несоответствие архитектуры)

Я создал мета-пакет RPM (скажем, metapkg ), который извлекает все зависимости, которые мне нужны в моей системе (CentOS 7). Этот пакет указывает точные версии своих зависимостей (хотя и без архитектуры).

Пример: Требуется: perl = 5.16.3-285.el7

Когда я попробуйте обновить мою систему с помощью yum update , Yum жалуется на несколько проблем с зависимостями:

Error: Package: metapkg-1.1.0-1.noarch (myupdates)
           Requires: perl = 5.16.3-285.el7
           Installed: 4:perl-5.16.3-285.el7.x86_64 (@anaconda)
               perl = 4:5.16.3-285.el7
Error: Package: metapkg-1.1.0-1.noarch (myupdates)
           Requires: grub2 = 2.02-0.17.0.1.el7.centos.4
           Installed: 1:grub2-2.02-0.17.0.1.el7.centos.4.x86_64 (@anaconda)
               grub2 = 1:2.02-0.17.0.1.el7.centos.4
Error: Package: metapkg-1.1.0-1.noarch (myupdates)
           Requires: vim-enhanced = 7.4.160-1.el7
           Installed: 2:vim-enhanced-7.4.160-1.el7.x86_64 (@anaconda)
               vim-enhanced = 2:7.4.160-1.el7
Error: Package: metapkg-1.1.0-1.noarch (myupdates)
           Requires: lvm2 = 2.02.115-3.el7_1.1
           Installed: 7:lvm2-2.02.115-3.el7_1.1.x86_64 (@anaconda)
               lvm2 = 7:2.02.115-3.el7_1.1

Моя архитектура полностью x86_64, поэтому я не понимаю, почему Yum делает различие между perl-5.16. 3-285.el7 и perl-5.16.3-285.el7.x86_64 .

Я попытался указать архитектуру в своих зависимостях метапакета, но даже если я это сделаю, другие пакеты не обновляются .. .

Есть ли способ обойти такое поведение?

Спасибо!

1
задан 9 December 2015 в 19:49
1 ответ

После некоторых раскопок я обнаружил, что в версиях зависимостей я не указывал эпоху пакета. Итак, Yum устанавливает эпоху по умолчанию (0), которая не совпадает с установленной (4 для моей версии perl).

Итак, с такой зависимостью как эта :

Requires: perl = 4:5.16.3-285.el7

все работает, как и ожидалось.

.
1
ответ дан 3 December 2019 в 23:54

Теги

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