A atualização de Yum reclama de dependência (incompatibilidade de arquitetura)

1

Eu criei um pacote meta RPM (digamos metapkg ) que extrai todas as dependências que preciso no meu sistema (CentOS 7). Este pacote especifica as versões exatas de suas dependências (sem a arquitetura).

Exemplo: Requires: perl = 5.16.3-285.el7

Quando tento atualizar meu sistema com yum update , o Yum reclama de vários problemas de dependência:

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

Minha arquitetura é completa x86_64, então não entendo porque o Yum faz a diferença entre perl-5.16.3-285.el7 e perl-5.16.3-285.el7.x86_64 .

Eu tentei especificar a arquitetura nas minhas dependências meta-pacote, mas mesmo se eu fizer isso, outros pacotes não atualizarão ...

Existe uma maneira de contornar esse comportamento?

Obrigado!

    
por mgraff 09.12.2015 / 18:49

1 resposta

1

Depois de algumas pesquisas, descobri que não especifiquei a época do pacote nas versões de dependências. Então, Yum define a época padrão ( 0 ), que não coincide com a instalada ( 4 para minha versão do perl).

Então, com uma dependência como esta:

Requires: perl = 4:5.16.3-285.el7

tudo funciona como esperado.

    
por 09.12.2015 / 19:19