Desafio de Dependência com o CentOS

1

Dada a seguinte saída, sugestões sobre o que tentar primeiro? Isto está em uma caixa do CentOS 5.3 (atualizada do 5.2 via yum) rodando como um pequeno servidor de desenvolvimento. Eu geralmente me sinto confortável com o * nix, mas a dependência me deixa um pouco perplexa às vezes. Então, desta vez estou procurando ajuda antes de fugir.

Saída da "atualização do yum" de hoje:

Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package perl-Net-SSLeay.i386 0:1.35-1.el5.rf set to be updated
---> Package perl-IO-Socket-SSL.noarch 0:1.26-1.el5.rf set to be updated
---> Package perl-Net-DNS.i386 0:0.65-1.el5.rf set to be updated
---> Package perl-Package-Constants.noarch 0:0.02-1.el5.rf set to be updated
---> Package perl-IO-Compress.noarch 0:2.020-1.el5.rf set to be updated
--> Processing Dependency: perl(Compress::Raw::Bzip2) >= 2.020 for package: perl-IO-Compress
--> Processing Dependency: perl(Compress::Raw::Zlib) >= 2.020 for package: perl-IO-Compress
--> Running transaction check
---> Package perl-Compress-Raw-Bzip2.i386 0:2.015-1.el5.rf set to be updated
---> Package perl-IO-Compress.noarch 0:2.020-1.el5.rf set to be updated
--> Processing Dependency: perl(Compress::Raw::Zlib) >= 2.020 for package: perl-IO-Compress
--> Finished Dependency Resolution
perl-IO-Compress-2.020-1.el5.rf.noarch from rpmforge has depsolving problems
  --> Missing Dependency: perl(Compress::Raw::Zlib) >= 2.020 is needed by package perl-IO-Compress-2.020-1.el5.rf.noarch (rpmforge)
Error: Missing Dependency: perl(Compress::Raw::Zlib) >= 2.020 is needed by package perl-IO-Compress-2.020-1.el5.rf.noarch (rpmforge)

perl (Compactar :: Raw :: Zlib) é um nome de pacote?!? Em caso afirmativo, recebo isso em uma tentativa de atualização:

Package perl-Compress-Raw-Zlib-2.015-1.el5.rf.i386 already installed and latest version

Versão errada, mas diz que é o mais recente ...

Apenas no caso de isso ser útil:

$ uname -a
Linux EFhermesDev 2.6.18-128.1.16.el5.centos.plus #1 SMP Wed Jul 1 13:06:47 EDT 2009 i686 i686 i386 GNU/Linux
    
por Chris_K 07.07.2009 / 20:32

9 respostas

10

Você está vendo um problema de dependência de rpmforge, não um problema de dependência do CentOS.

rpmforge perl modules são reconstruídos em massa no momento. Consulte o link ff.

    
por 07.07.2009 / 21:06
3

Note que a partir do CentOS-5.3 você pode tentar:

   yum update --skip-broken

... isso provavelmente funcionará melhor em 5.4.

    
por 22.07.2009 / 20:51
2

Você pode obter a versão 2.020 aqui ( readme ). Foi lançado em 3 de junho de 2009.

Histórico:

A dependência está chamando por uma versão mais recente do que o seu repositório acha que é a versão mais recente:

Error: Missing Dependency: perl(Compress::Raw::Zlib) >= 2.020 is needed by package perl-IO-Compress-2.020-1.el5.rf.noarch (rpmforge)

Você tem uma versão mais antiga instalada do que as chamadas de dependência:

Package perl-Compress-Raw-Zlib-2.015-1.el5.rf.i386 already installed and latest version

Como diz, você precisa instalar:

perl(Compress::Raw::Zlib) >= 2.020

para resolver essa dependência.

    
por 07.07.2009 / 20:49
2

Isso porque o repositório que você está usando está fora de sincronia consigo mesmo.

Navegue por este site

A partir deste post, o pacote perl-IO-Compress.noarch foi atualizado para 2.020 e depende de uma versão 2.020 do perl-Compress-Raw-Zlib.

No entanto, o perl-Compress-Raw-Zlib ainda está em 2.015. Você pode esperar até que eles recuperem ou você pode ignorar perl-IO-Compress.noarch no yum até então.

Tente adicionar:

exclude=perl-IO-Compress*

para /etc/yum.conf. (Não testei isso, você pode ter que adicionar outras exclusões, tente isso na linha de comando e veja o que acontece antes de adicionar ao yum.conf)

Você deve estar usando o repo EPEL para coisas como esta, na medida do possível. EPEL é um sub projeto do Fedora e tem padrões mais altos.

Tente remover todos os pacotes do rpmforge (e o repositório do yum) e use apenas o EPEL.

    
por 07.07.2009 / 21:10
0

A instrução "exclude = perl-IO-Compress *" não funciona. A atualização do yum supera esse problema, mas encontra esse problema mais tarde.

- > Resolução de Dependência Concluída Erro: Dependência ausente: perl (IO :: Compress :: Base :: Common) > = 2.015 é necessário pelo pacote perl-Compress-Zlib Erro: Falta Dependência: perl (IO :: Uncompress :: Gunzip) > = 2.015 é necessário pelo pacote perl-Compress-Zlib Erro: Dependência ausente: perl (IO :: Compress :: Gzip) > = 2.015 é necessário pelo pacote perl-Compress-Zlib Erro: Dependência ausente: perl (IO :: Compress :: Gzip :: Constants) > = 2.015 é necessário pelo pacote perl-Compress-Zlib

    
por 08.07.2009 / 00:19
0

Eek, não mude o seu repo apenas com base neste erro de dependência, eles vão consertá-lo. Apenas seja um pouco paciente. Mudar para o repositório EPEL pode causar outros problemas que podem precisar ser corrigidos ao longo do caminho, já que eles têm diferentes pacotes / compilações / dependências e se você está preparado para o RPMForge, então você pode precisar alterar alguns pacotes para se adequar ao EPEL. Então você está apenas trocando um problema por outro.

    
por 08.07.2009 / 16:27
0

[resolvido] Estou tentando (que tola eu fui ontem mesmo ;-))

rpm -Uvh link

atualização yum

como eles têm a versão 2.020 do perl (Compress :: Raw :: Zlib)

alexx

p.s. Zaph estava certo - esse era o caminho errado a seguir (mas cheguei lá no final com zero e-mails perdidos e zero tempo de inatividade para meus servidores da Web).

    
por 08.07.2009 / 10:46
0

Como consegui que funcionasse. Eu individualmente yum instalado todos os pacotes, um de cada vez. O único que não foi o Perl-IO-Compress. Fui ao link do link acima e fiz o download do arquivo perl-IO-Compress-2.020-2 / el5.rf.noarch.rpm (I estou executando o RHEL 5.3) em um diretório separado. Eu então corri o yum para instalar * .rpm daquele diretório. É instalado sem nenhum problema !!! Além disso, meu aplicativo ainda funciona.

    
por 10.07.2009 / 17:19
0

Estou usando o Centos 5.5. Perl-IO-Compress está em rpmforge-extras agora. Upgrade do pacote rpmforge-release primeiro:

yum update rpmforge-release

Combine novas informações de /etc/yum.repos.d/rpmforge.repo.rpmnew em /etc/yum.repos.d/rpmforge.repo. Agora atualize usando:

yum --enablerepo = atualização do rpmforge-extras

    
por 06.12.2010 / 08:29