Como resolvo dependências não satisfeitas depois de adicionar um PPA?

490

Ocasionalmente, quando estou instalando coisas, recebo um erro como o seguinte:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

Como posso resolver isso?

    
por jrg 21.05.2012 / 16:17

14 respostas

520

O APT é um sistema de gerenciamento de pacotes para o Debian e outras distribuições Linux baseadas nele, como o Ubuntu. Na maior parte, o APT é fácil de usar para instalar, remover e atualizar pacotes. Em casos raros, muitas vezes, quando você está misturando dependências de terceiros, há uma chance de que apt-get possa acabar dando a você um erro informando que uma instalação de pacote não pôde ser concluída.

Soluções:

É sempre uma boa ideia fazer backup dos arquivos de configuração, como /etc/apt/sources.list , para que você possa reverter as alterações, se necessário.

  • Se o error mostrar algo assim:

    <some-package>: Depends: <other-package> (= version) but this-version is to be installed

    Em seguida, verifique se os repositórios restricted e universe estão ativados. Pressione Alt + F2 , digite software-properties-gtk e pressione Enter .

    Na guia Ubuntu Software , ative todos os repositórios.

  • Uma possível causa de dependências não atendidas pode estar corrompida no banco de dados de pacotes e / ou alguns pacotes não foram instalados corretamente. Para corrigir este problema, pressione Alt + Ctrl + T para abrir o terminal e tente executar um dos seguintes comandos:

    sudo apt-get clean

    ou

    sudo apt-get autoclean

    apt-get clean limpa o repositório local de arquivos de pacotes recuperados (os arquivos .deb). Ele remove tudo, exceto o arquivo de bloqueio de / var / cache / apt / archives / e / var / cache / apt / archives / partial /. apt-get autoclean limpa o repositório local de arquivos de pacotes recuperados, mas ao contrário de apt-get clean , ele apenas remove arquivos de pacotes que não podem mais ser baixados e são inúteis em grande parte.

  • Uma das correções mais básicas para resolver problemas de dependências é executar:

    sudo apt-get -f install

    O -f aqui significa "consertar quebrado". Apt tentará corrigir dependências quebradas. Se você instalou manualmente um pacote que tinha dependências não atendidas, apt-get instalará essas dependências, se possível, caso contrário, pode simplesmente remover o pacote que você instalou para resolver o problema.

    Em seguida, execute:

    sudo dpkg --configure -a

    Em seguida, execute novamente:

    sudo apt-get -f install

    Se a saída for:

    0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

    Isso significa que falhou.

  • A próxima solução é executar:

    sudo apt-get -u dist-upgrade

    Se mostrar algum pacote retido, é melhor eliminá-los. Pacotes são mantidos devido a conflitos de dependência que apt não pode resolver. Tente este comando para encontrar e reparar os conflitos:

    sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade

    Se não puder corrigir os conflitos, sairá com:

    0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.

    Exclua os pacotes retidos um por um, executando dist-upgrade a cada vez, até que não haja mais pacotes retidos. Em seguida, reinstale os pacotes necessários. Certifique-se de usar a opção --dry-run , para que você esteja totalmente informado das consequências:

    sudo apt-get remove --dry-run package-name

    Como remover o pacote que você está tentando instalar pode não ser o ideal, você também pode tentar encontrar um repositório que tenha os pacotes necessários para satisfazer as dependências.

Finalmente, se tudo mais falhar, você pode tentar satisfazer as dependências, localizando e instalando os pacotes necessários, ou instalando-os a partir da origem e, em seguida, criando “ deb " pacotes para eles.

Desativar / remover / eliminar os PPAs:

PPAs (Personal Package Archive) são repositórios hospedados no Launchpad . Você pode usar os PPAs para instalar ou atualizar pacotes que não estão disponíveis nos repositórios oficiais do Ubuntu.

Uma das causas mais comuns de dependências não atendidas são os PPAs, especialmente quando usados para atualizar o pacote existente nos repositórios do Ubuntu. Para resolver o problema, você tem três opções: desativar, limpar (reverter para o pacote original nos repositórios do Ubuntu) ou remover o PPA.

  • Desativar:

    Desativar um PPA significa que não há mais atualizações para os pacotes instalados a partir desse PPA. Para desabilitar um PPA: Abra Software Center > Edit > Software Sources Or,

    Pressione Alt + F2 e execute software-properties-gtk .

    Clique na guia Other Software , você verá que cada PPA tem duas linhas aqui, uma para os pacotes compilados e outra para a fonte, Uncheck de ambas as linhas para desabilitar um PPA. Aqui você também pode adicionar e remover PPAs.

  • Eliminação:

    Purgar um PPA significa fazer um downgrade dos pacotes no PPA selecionado para a versão nos repositórios oficiais do Ubuntu e desabilitar esse PPA. PPA Purge faz exatamente isso. Para instalar o PPA Purge, execute o seguinte comando:

    sudo apt-get install ppa-purge

Mas, considerando que a questão apt está quebrada, o comando acima falhará. Então use este comando

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Para usar o PPA Purge:

sudo ppa-purge ppa:someppa/ppa

Se o comando 'ppa-purge' falhar por algum motivo, não será possível executar o 'ppa-purge' novamente, a menos que você reative o PPA (Para ativar o PPA, siga as mesmas etapas que desabilitar um PPA e Check as duas linhas de um determinado PPA para habilitá-lo).

Observação: PPA Purge não remove os PPAs ( podem estar no futuro ), você terá que remover manualmente o PPA.

  • Remover:

    Se o pacote instalado a partir de um PPA não existir nos repositórios oficiais do Ubuntu, então usar PPA Purge não é recomendado, porque não há nada para ser rebaixado e PPA Purge também não o deletaria. Para remover um PPA e pacotes instalados, execute os seguintes comandos: (Ignore o primeiro comando se não quiser remover os pacotes instalados)

    sudo apt-get autoremove --purge package-name
    sudo add-apt-repository --remove ppa:someppa/ppa
    sudo apt-get autoclean
    

Como alternativa, você pode usar Y PPA Manager para desabilitar / remover / limpar os PPA's (Detalhes no final da resposta).

Medidas Preventivas:

Então, como podemos evitar que isso aconteça em primeiro lugar?

  • Mantenha o Ubuntu atualizado. O Ubuntu notifica automaticamente quando as atualizações estão disponíveis, você também pode verificar as atualizações disponíveis clicando em Session Indicator no painel do Unity:

    Ou, Pressione Alt + Ctrl + T para abrir o terminal e executar os seguintes comandos:

    sudo apt-get update
    sudo apt-get upgrade

    Atualizar: Sincroniza sua lista de pacotes disponíveis com os servidores nos repositórios de origem. Upgrade: Downloads e amp; instala qualquer versão mais recente dos seus pacotes instalados.

  • Se você decidir adicionar outros repositórios ao sources.list, certifique-se de que o repositório funcione (e saiba que funciona) com o Ubuntu. Repositórios que não são projetados para funcionar com sua versão do Ubuntu podem introduzir inconsistências em seu sistema e podem forçá-lo a reinstalar. Além disso, certifique-se de que você realmente precisa adicionar repositórios externos, pois os pacotes de software que você está procurando já podem ter sido introduzidos nos repositórios oficiais! Source
  • Remova os PPAs duplicados. Y PPA Manager (guia de instalação no final da resposta) pode verificar e remover facilmente os PPAs duplicados.

    • Pressione Alt + F2 e execute y-ppa-manager para abrir o Y PPA Manager.
    • Uma vez aberto, clique duas vezes ou pressione Enter em Advanced .
    • Na janela resultante, selecione Scan and remove duplicate PPAs e clique em OK.

Obtenção de ajuda:

Quando pedir ajuda no Askubuntu ou em qualquer outro fórum de ajuda, você deve incluir a saída dos seguintes comandos em sua pergunta:

  • Saída do erro real:

    sudo apt-get install package-name
  • Isso mostrará seu sources.list:

    cat /etc/apt/sources.list
  • Isso mostrará a lista de PPAs (se houver):

    cat /etc/apt/sources.list.d/*

Fontes adicionais:

Gerente do Y PPA :  Y PPA Manager é um balcão único para todas as suas necessidades de PPA.

Aqui estão algumas das suas características:

  • pacotes de pesquisa em todos os PPAs do Launchpad
  • lista e download de pacotes em um PPA
  • adicionar / remover / limpar um PPA
  • backup e restauração de origens PPA
  • remova fontes PPA duplicadas

Para instalar o Y PPA Manager , abra o terminal pressionando Alt + Ctrl + T e execute os seguintes comandos:

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

Considerando a pergunta, apt está corrompido, então use esses comandos

sudo su

e

32 bits:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 bits:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
    
por Basharat Sialvi 27.05.2012 / 09:26
81
  

Nota: Todos os comandos pedidos para serem executados devem ser executados no terminal, que pode ser aberto por Ctrl + Alt + T ou procurando por terminal no painel.

Está realmente quebrado?

Tente executar o seguinte comando e tente reinstalar o software que você estava tentando instalar

sudo apt-get update

Passos pré-perfomance

Fazendo backup

Faça o backup dos seguintes arquivos:

  • /etc/apt/sources.list
  • /var/lib/dpkg/status

Para fazer isso, use estes comandos

sudo cp /etc/apt/sources.list /etc/apt/sources.list.original

e

sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original

Limpando seu apt-cache

apt mantém um cache de pacotes baixados recentemente para economizar largura de banda quando é necessário instalá-lo. Isso pode ser contraproducente em alguns casos

Agora, para limpá-lo, você tem duas opções

sudo apt-get clean 

Isso removerá todos os pacotes armazenados em cache pertencentes à pasta /var/cache/apt/archives/ e /var/cache/apt/archives/partial , exceto os arquivos .lock. Isso é recomendado

sudo apt-get autoclean

Isso verifica as pastas /var/cache/apt/archives/ e /var/cache/apt/archives/partial e verifica se o pacote ainda está nos repositórios e remove os que não estão

Corrigindo dependências

Usando o modo de correção de falhas do apt

sudo apt-get -f install

Isso fará com que o apt verifique se há dependências ausentes e corrija-as dos repositórios

Se a saída indicar que nada novo foi instalado ou atualizado, ele falhou.

Verificando se todas as fontes necessárias estão habilitadas

Digite gksu software-properties-gtk e você verá esta janela

Certifique-se de que todas as fontes estejam ativadas.

Em seguida, vá para a guia Outro software e verifique se os PPAs necessários para o software a ser instalado estão lá e estão habilitados. Além disso, tente desativar alguns PPAs que possam estar tendo pacotes quebrados

agora, execute sudo apt-get update

Tente instalar o software agora

Selecionando um servidor melhor para fazer o download de

Digite gksu software-properties-gtk e você verá esta janela

Clique na caixa Download no menu suspenso e selecione outra

Clique em Selecionar melhor servidor

Executar sudo apt-get update

Tente instalar o software

também, tente usar sudo apt-get install -f

PPA Purge

Esta é uma ferramenta usada para limpar ppa quebrados / indesejados e suas aplicações junto com ele

Para instalá-lo, execute

sudo apt-get install ppa-purge

Mas, Considerando a questão apt está quebrado, então o comando acima irá falhar. Então use este comando

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

Agora use o ppa purge

sudo ppa-purge ppa:someppa/ppa  

Gerente de Y-PPA

O Y-PPA Manager é um aplicativo de gui que ajuda você a gerenciar os PPAs e vários problemas associados a ele

Para instalá-lo

sudo add-apt-repository ppa:webupd8team/y-ppa-manager

e

sudo apt-get update

e

sudo apt-get install y-ppa-manager

Considerando a pergunta, apt está quebrado, use esses comandos

sudo su

e

32 bits:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 bits:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb

Agora digite y-ppa-manager

Você será presenteado com esta janela

Clique duas vezes em avançado e você verá esta janela

Faça o seguinte Tarefas descritas em preto

Prevenir é melhor que remediar

É melhor prevenir do que procurar por essa pergunta no AskUbuntu: D

Então, aqui estão as diretrizes para mantê-lo seguro

Mantenha seu sistema atualizado

sempre executa o seguinte comando regularmente

sudo apt-get update&&sudo apt-get upgrade

ou, você sempre pode usar o Update Manager com este comando

gksu update-manager

Usando somente PPAs confiáveis

Use somente PPAs para uso no Ubuntu também, use somente PPAs com fontes confiáveis. De fato, o pacote pode já estar nos repositórios do Ubuntu

Fazendo backup quando as coisas estão boas e restaurando depois

Para isso, você precisa do Y-PPA-Manager. As etapas para instalá-lo são fornecidas acima.

Execute este comando para abrir o Y-PPA-Manager

y-ppa-manager

Você será presenteado com esta janela

Clique duas vezes em avançado e você verá esta janela

Execute isto:

Você será solicitado a salvar um arquivo tar.gz com uma caixa de diálogo semelhante à mostrada abaixo. Salve em outra partição ou em um lugar seguro

Mais tarde, quando precisar restaurá-lo novamente, siga etapas semelhantes e, quando chegar ao diálogo avançado, clique nele:

Você será solicitado a restaurar do backup anterior que você salvou antes com uma caixa de diálogo semelhante à abaixo

Tudo em um script

Em breve

Ainda não está funcionando?

Erros de dependência de pacotes nem sempre são genéricos e dependem do pacote a ser instalado.

Se seguir todas as etapas dadas para corrigir o erro não funcionar para você, você pode sempre perguntar no Ask Ubuntu

Aqui estão alguns comandos que você precisa postar a saída de

sudo apt-get install packagename

e

cat /etc/apt/sources.list

e

cat /etc/apt/sources.list.d/*

(Agradecimentos a Basharat Sial )

Existem também outros arquivos / comandos dos quais você precisa de uma saída que pode ser específica do erro, e os usuários provavelmente irão lhe pedir nos comentários para postar o arquivo / comando.

    
por Amith KK 21.05.2012 / 16:30
34

Estas respostas até agora estão focadas em como resolver automaticamente esse problema, principalmente esperando que ele se resolva sozinho, mas não focado em entender como investigar dependências. É importante tentar coisas como garantir que suas listas de pacotes estejam atualizadas, pois você precisa garantir que uma simples atualização ou limpeza do cache não resolva o problema antes de ir mais fundo. Se tudo nos bastidores está funcionando como deveria, no entanto, é fundamental aprender a entender as dependências. Às vezes, as camadas de dependências podem parecer opressivas, mas o conceito é simples e fundamental para entender como o software é instalado / desinstalado em um sistema Ubuntu.

Eu recomendo altamente o aptitude para qualquer pessoa que use um sistema baseado em .deb como o Ubuntu. Sua estrutura em árvore permite que você navegue facilmente por dependências, incluindo pacotes recomendados e sugeridos, bem como visualize conflitos e dependências não atendidas. É uma ferramenta inestimável para quando o apt-get não oferece uma solução simples, e para visualizar dependências em geral. ( Synaptic também está disponível no Ubuntu, mas não acho isso intuitivo.)

O Aptitude também oferece um resolvedor de conflitos que o orientará em todas as combinações possíveis de pacotes instalados / removidos / atualizados / etc para satisfazer todos os requisitos sem conflito ou problema. Isso pode ser bem-sucedido mesmo quando o apt não consegue encontrar uma solução. Como um usuário do Ubuntu, normalmente não surgem situações que exigem que você investigue por que esse pacote específico está sendo instalado, mas é quase inevitável quando você usa o sistema mais.

    
por overprescribed 30.05.2012 / 18:45
23

package1: Depends: package2 (& gt; = 1.8) mas 1.7.5-1ubuntu1 deve ser instalado

Explicação da mensagem:

  1. Para que sua instalação seja concluída, package1 precisa do pacote2.
  2. o pacote2 precisa estar disponível na versão & gt; = 1.8
  3. O gerenciador de pacotes verificou todos os repositórios e encontrou apenas a versão 1.7.5-1ubuntu1 que poderia ser instalada, o que não será feito porque é & lt; 1,8

Corrigir

NÃO existe uma única resposta certa para esta pergunta e NÃO existe uma resposta simples.

Existem muitos cenários pelos quais isso pode acontecer e é preciso investigar todas as opções e tentar resolver as condições prévias que levam a esse erro.

Cenário A:

Todos os repositórios aos quais você tem acesso não possuem package2 na versão & gt; = 1.8, então você terá que encontrar um repositório que tenha. Se você não conseguir encontrar um repositório com versões & gt; = 1.8, poderá ser necessário construir e instalar o pacote2 a partir do código-fonte. E tente instalar o pacote1.

Se você quiser saber como criar um pacote a partir do código-fonte, verifique outras perguntas / respostas ou poste um novo.

Cenário B:

Os repositórios incluem o package2 em uma versão & gt; = 1.8, mas o gerenciador de pacotes ainda deseja instalar uma versão mais antiga (1.7.5).

A razão para isto pode ser que as versões posteriores do package2 foram construídas por alguma tecnologia mais recente que não é suportada por outros pacotes que você já instalou.

Isso pode não ser possível para corrigir. Você pode tentar usar apt ou synaptic e procurar por todas as versões do pacote2 que estão disponíveis nos repositórios, e tentar instalar uma versão específica & gt; = 1.8

Se você tiver outros pacotes incompatíveis e fizer isso, você receberá uma lista de mensagens de erro semelhantes para todos os outros pacotes que impedem a instalação de package2 & gt; = 1.8.

Nesse caso, você tem um problema maior. Você queria instalar o pacote1, que precisa do pacote2 para ser & gt; = 1.8, mas o pacote2 na versão & gt; = 1.8 requer que o pacote3 esteja na versão & gt; = 6.7 e você tenha o pacote3 versão 6.3

O problema é que o gerenciador de pacotes (APT) tenta resolver automaticamente todas essas dependências, se for possível. Quando diz que não é possível (e emite uma mensagem como na pergunta), então você deve confiar.

Se você decidir não confiar no gerenciador de pacotes e se tiver certeza de que não terá problemas, tente forçar a instalação das versões específicas necessárias de todos os pacotes, uma por uma, e espere estar OK. / p>

Cuidado, fazer isso para pacotes do sistema pode criar problemas sérios. Você pode se proteger do sistema, bloquear serviços críticos, etc.

Cenário C:

Não importa as razões do problema, você sempre pode configurar a compilação manual e criar o pacote necessário e todas as suas dependências nas versões exatas necessárias da origem. Com essa opção, você pode manter o que você construiu em um diretório separado e fora do caminho do sistema para que ele não crie conflitos com o sistema. Esta é provavelmente a solução mais limpa e, às vezes, pode ser mais rápida.

Cenário D:

O gerenciador de pacotes tem acesso a informações desatualizadas sobre pacotes e, portanto, não pode encontrar uma solução. Olhe nas outras respostas.

Cenário E:

O gerenciador de pacotes tem um bug no código de resolução de dependências.

Você tem que investigar que este é realmente o caso e, em seguida, emitir uma solicitação de bug.

...

Cenário Z:

Pode haver outros cenários.

Por exemplo, os mantenedores de pacotes poderiam estar errados e não verificaram se o pacote1 funcionaria mesmo com a versão do pacote2 & lt; 1.8 e na especificação eles definiram dependências erradas.

    
por Vangel Ajanovski 30.05.2012 / 12:43
16

Esses métodos precisam ser seguidos sempre que você tiver dúvidas sobre Dependências não atendidas

Depois de seguir as instruções, tente instalar o software. Pelo menos um desses métodos deve funcionar para você

1 . Antes de tentar qualquer novo comando ou adicionar qualquer novo ppa tente isto

Limpeza do cache do apt:

sudo apt-get clean

Limpeza de quaisquer dependências não utilizadas:

sudo apt-get autoremove

Atualizando o apt-cache

sudo apt-get update

Isso removerá todo o cache e fará o download de um novo cache. Isso deve ser feito para obter novos pacotes de cache e atualizações mais recentes.

2 . Tente sudo apt-get install -f .

Provavelmente, ele dará algumas sugestões sobre remoção e instalação de pacotes, faça o que parecer razoável.

3 . Altere o Download Server de Software Sources porque às vezes os arquivos em um servidor estão corrompidos.



4 . Isso também acontece se você adicionou um ppa externo para a dependência quebrada. Tente remover esse ppa por

  • digitando sudo add-apt-repository --remove ppa:someppa/ppa e removendo manualmente os arquivos / bibliotecas instalados pelo ppa

ou

  • limpando um ppa (isso também remove os arquivos instalados)

    sudo apt-get install ppa-purge   #a one time install 
    sudo ppa-purge ppa:someppa/ppa  
    

5 . Se não 4 não é o seu caso, então pelo menos tentar remover o pacote que está sendo mostrado como uma dependência quebrada.Em seguida, tente novamente a instalação.Isto é relatado para ter workeed para algumas pessoas.

6 . Sempre adicione a versão estável de um repositório / PPA.

7 Verifique também se todos os repositórios oficiais estão habilitados (Em Software Sources )

Por favor, não ative o Proposed Updates como eles são para testes / desenvolvedores.

Como dito por doug:

  

Normalmente, a melhor primeira etapa para resolver isso é identificar a origem de <pkg1> & amp; <pkg2> .

Além disso, não é notado que em muitos casos, se não na maioria dos casos, "tudo o que for instalado" realmente significa "& lt; whatever & gt; is installed" e deve ser removido se nada mais funcionar (como em ponto 5).

Continuaremos adicionando mais coisas para corrigir unmet dependencies .

    
por Ashu 21.05.2012 / 17:24
15

Na maioria dos casos, a instalação do pacote por meio de aptitude resolverá dependências não atendidas. Por padrão, aptitude package não foi instalado no seu pc. Portanto, primeiro instale-o executando

sudo apt-get update
sudo apt-get install aptitude

então,

sudo aptitude install packagename

Por exemplo,

    
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install ubuntu-sdk
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ubuntu-sdk : Depends: qtcreator-plugin-ubuntu but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Instalando o pacote por meio de aptitude

avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo aptitude install ubuntu-sdk
The following NEW packages will be installed:
  apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} at{a} build-essential{a} 
  click{a} click-apparmor{a} click-dev{a} click-doc{a} cordova-ubuntu-2.8 
  cordova-ubuntu-2.8-examples{a} debhelper{a} devscripts{a} dh-apparmor{a} 
  dh-make{a} distro-info-data{a} dpkg-dev{a} dput{a} g++{a} g++-4.8{a} 
  geoclue-gypsy{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} 
  libalgorithm-merge-perl{a} libboost-filesystem1.53.0{a} 
  libboost-program-options1.53.0{a} libboost-regex1.53.0{a} 
  libbotan-1.10-0{a} libdee-qt5-3{a} libdistro-info-perl{a} 
  libexporter-lite-perl{a} libglib2.0-dev{a} 
  libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} 
  libhud2{a} libio-stringy-perl{a} libjs-jquery{a} libjs-sphinxdoc{a} 
  libjs-underscore{a} liblockdev1{a} libmail-sendmail-perl{a} 
  libparse-debcontrol-perl{a} libpcre3-dev{a} libpcrecpp0{a} 
  libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} 
  libqt5clucene5{a} libqt5contacts5{a} libqt5declarative5{a} 
  libqt5designer5{a} libqt5designercomponents5{a} libqt5feedback5{a} 
  libqt5help5{a} libqt5location5-plugins{a} libqt5multimedia5{a} 
  libqt5multimedia5-plugins libqt5multimediaquick-p5{a} 
  libqt5multimediawidgets5{a} libqt5organizer5{a} 
  libqt5qml-graphicaleffects{a} libqt5script5 libqt5scripttools5{a} 
  libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} libqt5v8-5-dev 
  libqt5versit5{a} libqt5versitorganizer5{a} libqt5webkit5-dev 
  libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} 
  libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} 
  libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} 
  libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} 
  libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} 
  python3-magic{a} qmlscene qt3d5-dev qtbase5-doc{a} qtcreator{a} 
  qtcreator-doc{a} qtcreator-plugin-ubuntu{a} 
  qtcreator-plugin-ubuntu-common{a} qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools 
  qtdeclarative5-doc-html{a} qtdeclarative5-folderlistmodel-plugin 
  qtdeclarative5-friends0.2 qtdeclarative5-localstorage-plugin 
  qtdeclarative5-particles-plugin qtdeclarative5-poppler1.0 
  qtdeclarative5-qtaudioengine-plugin qtdeclarative5-qtfeedback-plugin{a} 
  qtdeclarative5-qtlocation-plugin qtdeclarative5-qtmultimedia-plugin{a} 
  qtdeclarative5-qtorganizer-plugin qtdeclarative5-qtquick2-plugin{a} 
  qtdeclarative5-qtsensors-plugin qtdeclarative5-u1db1.0 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin{a} 
  qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin 
  qtgraphicaleffects5-doc{a} qtlocation5-dev{a} qtmultimedia5-dev 
  qtmultimedia5-doc{a} qtmultimedia5-doc-html{a} qtscript5-dev 
  qtscript5-doc{a} qtscript5-doc-html{a} qtsensors5-dev{a} qtsvg5-doc{a} 
  qtsvg5-doc-html{a} qttools5-dev qttools5-dev-tools qttools5-doc{a} 
  qtwebkit5-doc-html{a} schroot{a} schroot-common{a} sqlite3{a} 
  ubuntu-html5-container ubuntu-html5-sdk{ab} ubuntu-html5-theme{a} 
  ubuntu-html5-theme-examples ubuntu-sdk ubuntu-sdk-libs 
  ubuntu-sdk-libs-dev{a} ubuntu-ui-toolkit-doc{a} 
  ubuntu-ui-toolkit-examples{a} ubuntu-ui-toolkit-theme{a} 
  unity-action-doc{a} upstart-app-launch{a} upstart-app-launch-tools{a} 
  usermetricsservice{a} wdiff{a} zlib1g-dev{a} 
The following packages will be upgraded:
  cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc++6 libtsan0 
15 packages upgraded, 151 newly installed, 0 to remove and 293 not upgraded.
Need to get 108 MB/126 MB of archives. After unpacking 273 MB will be used.
The following packages have unmet dependencies:
 ubuntu-html5-sdk : Depends: qtdeclarative5-ubuntu-webapps-api which is a virtual package.
                    Depends: ubuntu-html5-ui-toolkit but it is not going to be installed.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:              
1)     qtcreator-plugin-ubuntu [Not Installed]                          
2)     ubuntu-html5-sdk [Not Installed]                                 
3)     ubuntu-sdk [Not Installed]                                       

     Leave the following dependencies unresolved:                       
4)     libhud-client2 recommends hud (= 13.10.1+13.10.20131014-0ubuntu1)
5)     qtcreator-plugin-ubuntu-common recommends qtcreator-plugin-ubuntu


Accept this solution? [Y/n/q/?] y
The following NEW packages will be installed:
  apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} build-essential{a} 
  click{a} click-apparmor{a} cordova-ubuntu-2.8 debhelper{a} dh-apparmor{a} 
  dh-make{a} dpkg-dev{a} g++{a} g++-4.8{a} geoclue-gypsy{a} 
  libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} 
  libalgorithm-merge-perl{a} libdee-qt5-3{a} libglib2.0-dev{a} 
  libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} 
  libhud2{a} libjs-jquery{a} libmail-sendmail-perl{a} libpcre3-dev{a} 
  libpcrecpp0{a} libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} 
  libqt5clucene5{a} libqt5contacts5{a} libqt5designer5{a} 
  libqt5designercomponents5{a} libqt5feedback5{a} libqt5help5{a} 
  libqt5location5-plugins{a} libqt5multimedia5{a} libqt5multimedia5-plugins 
  libqt5multimediaquick-p5{a} libqt5multimediawidgets5{a} 
  libqt5organizer5{a} libqt5qml-graphicaleffects{a} libqt5script5 
  libqt5scripttools5{a} libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} 
  libqt5v8-5-dev libqt5versit5{a} libqt5versitorganizer5{a} 
  libqt5webkit5-dev libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} 
  libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} 
  libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} 
  libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} 
  libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} 
  qmlscene qt3d5-dev qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools 
  qtdeclarative5-folderlistmodel-plugin qtdeclarative5-friends0.2 
  qtdeclarative5-localstorage-plugin qtdeclarative5-particles-plugin 
  qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-plugin 
  qtdeclarative5-qtfeedback-plugin{a} qtdeclarative5-qtlocation-plugin 
  qtdeclarative5-qtmultimedia-plugin{a} qtdeclarative5-qtorganizer-plugin 
  qtdeclarative5-qtquick2-plugin{a} qtdeclarative5-qtsensors-plugin 
  qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin{a} 
  qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin 
  qtlocation5-dev{a} qtmultimedia5-dev qtscript5-dev qtsensors5-dev{a} 
  qttools5-dev qttools5-dev-tools sqlite3{a} ubuntu-html5-container 
  ubuntu-html5-theme{a} ubuntu-html5-theme-examples ubuntu-sdk-libs 
  ubuntu-ui-toolkit-theme{a} upstart-app-launch{a} 
  upstart-app-launch-tools{a} usermetricsservice{a} wdiff{a} zlib1g-dev{a} 
The following packages will be upgraded:
  cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc++6 libtsan0 
15 packages upgraded, 108 newly installed, 0 to remove and 293 not upgraded.
Need to get 27.1 MB/45.8 MB of archives. After unpacking 104 MB will be used.
Do you want to continue? [Y/n/?] 
    
por Avinash Raj 29.12.2013 / 17:02
10

Minha resposta é semelhante à de Rick acima.

O uso de apt-get clean , apt-get autoclean , apt-get autoremove , apt-get upgrade , apt-get update , apt-get -u dist-upgrade etc. não funcionou para mim.

Eu finalmente resolvi esse problema descendo para a árvore de dependências via apt-get install , ilustrado com um exemplo abaixo. No meu caso, eu queria instalar o libmagickwand-dev :

apt-get install libmagickwand-dev

Eu recebi este erro:

The following packages have unmet dependencies:
 libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed

Então, eu corri apt-get install para uma das dependências com falha:

apt-get install libmagickcore-dev

The following packages have unmet dependencies:
 libmagickcore-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libgraphviz-dev but it is not going to be installed

Eu desci mais abaixo na árvore:

apt-get install libgraphviz-dev

com outro erro:

The following packages have unmet dependencies:
 libgraphviz-dev : Depends: libgvc5 (= 2.26.3-10ubuntu1) but it is not going to be installed

Mais uma vez, mais abaixo na árvore:

apt-get install libgvc5

Por algum motivo estranho, isso foi bem-sucedido e consegui instalar o pacote original que queria com apt-get install libmagickwand-dev :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libpathplan4
Suggested packages:
  libgd-tools
The following NEW packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libgvc5 libpathplan4
0 upgraded, 5 newly installed, 0 to remove and 2 not upgraded.
Need to get 808 kB of archives.
After this operation, 2,320 kB of additional disk space will be used.
Do you want to continue [Y/n]?
    
por Michael Franzl 20.12.2012 / 11:47
8

Excelentes respostas! Mas hoje meu caso parece diferente do seu. Aqui está o meu conselho.

Problema:

Eu não instalei o apache2 no Ubuntu 10.10.

rick@wen-VirtualBox:~$ sudo apt-get install apache2

Reading package lists... Done

Building dependency tree      

Reading state information... Done

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

The following information may help to resolve the situation:

The following packages have unmet dependencies:

 apache2 : Depends: apache2-mpm-worker (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-prefork (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-event (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-itk (= 2.2.16-1ubuntu3) but it is not going to be installed

           Depends: apache2.2-common (= 2.2.16-1ubuntu3) but it is not going to be installed

E: Broken packages

Solução:

Meu jeito é adicionar o pacote dependido na lista de instalação.

Se 'sudo apt-get instalar o apache2' falhou, tente ' sudo apt-get instalar apache2 apache2.2-common '.

Veja? apache2.2-common vem do log de erros da etapa anterior.

Por fim, descobri que há uma cadeia de dependências assim:

 apache2.2-common <-- apache2.2-bin <-- libaprutil1-ldap <-- libaprutil1

Para os 3 primeiros pacotes, o apt-get log me disse 'não vai ser instalado',

mas para o último pacote, mostra 'libaprutil1-ldap: Depende: libaprutil1 (= 1.3.9 + dfsg-3build1) mas 1.3.9 + dfsg-3ubuntu0.10.10.1 deve ser instalado'

Eu tenho uma versão diferente existente no meu lib, então:

sudo apt-get remove libaprutil1

sudo apt-get install apache2

Agora está tudo bem.

    
por rick 24.11.2012 / 16:55
7

o que é erro de dependências não atendidas

Nos pacotes do Ubuntu são a principal maneira que o software é construído, implantado e instalado. Muito simplesmente, os pacotes são uma alternativa para baixar, construir e instalar software do zero. Eles oferecem uma série de vantagens em termos de instalação, remoção, monitoramento e manipulação de interações entre partes do software sobre o modelo padrão "compilar a partir da origem".   Ubuntu usa sistema de pacotes centralizado, ou seja, cada pacote é dependente de alguns outros pacotes. Quando instalamos um pacote suas dependências serão instaladas, O erro de dependências não atendidas ocorre quando as dependências do pacote não estão disponíveis para instalação

Causas possíveis

1.Computer is not connected to the Internet
2.The repository containing the depandancy package is not enabled
3.Package catalog is not updated
4.The version of the depandancy in the current repository is old
5.Software index is broken
6.The depandancy is not available for ubuntu

Vamos tentar resolvê-lo

  1. Conecte-se à internet: D
  2. Certifique-se de que todos os repositórios padrão estejam ativados

    - & gt; Você pode adicioná-los facilmente em Software Center - & gt; Editar & gt; Fontes de software- & gt; Outras fontes- & gt; Adicionar "

    - & gt; Inicie o Software Center .

    - & gt ;. No painel, acesse Edit e selecione Software Sources .

    - & gt; Certifique-se de que todos os repositórios estejam marcados

  3. Atualize o catálogo do software

    clique no ícone superior direito e escolha Entrada disponível para atualização no menu

e pressione o botão de verificação

4.tipo ctrl + alt + t para abrir o terminal e digitar   sudo apt-get install -f

5.Purge o ppa adicionado recentemente usando ppa-purga    ppa-purge

  

Este programa desabilita um PPA de suas fontes de software e reverte   seu sistema de volta para os pacotes oficiais do Ubuntu. Você pode usar isso para   retorne seu sistema ao normal depois de testar uma nova versão de um PPA.

Sintaxe

sudo ppa-purge ppa:<repository-name>/<subdirectory>

Exemplo

sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
  1. abra o software center e tente instalar qualquer software. Se a seguinte caixa de diálogo aparecer, pressione o botão de reparo e aguarde

Else digite ctrl + alt + t para abrir o terminal e digite sudo apt-get install -f e siga as instruções na tela

Se ainda ocorrer erro, sinta-se à vontade para perguntar em askbuntu

    
por Tachyons 23.05.2012 / 20:09
5

... não se esqueça de 'build-dep'

Além das respostas acima - eu tenho que admitir que estou surpreso que ninguém tenha mencionado essa abordagem, que é o que eu sempre usei como uma "bala de prata" a qualquer momento em que encontrei conflitos do apt-get ou pacotes não resolvidos. (ou mesmo se o sistema está sendo teimoso ... ha!).

EDITADO: usar sudo dpkg -r [package] é incentivado, pois tem uma função de remoção bastante eficiente. Como apt-get funciona junto com dpkg , o que significa que apt-get irá obedecer à função dpkg .

  sudo dpkg -r [package]
  sudo apt-get build-dep [package]  
  ## pre-install all deps for the package

Você chama o apt-get para limpar o pacote com falha que estava tentando instalar no sistema e, em seguida, chama o comando build-dep, que o apt-get irá pegar e instalar dependências pertencentes individualmente a esse pacote. vai satisfazer o pacote antes. Então, finalmente, chame o apt-get install:

sudo apt-get install [package]

.... 'Ugh! Vamos torcer o seu braço até você gritar "tio"! '

Isso raramente acontecia durante meus longos anos de uso do Linux, mas eu me vi usando essa abordagem raramente e com sucesso. Este é um exemplo da luta recente que tive há um mês atrás com os pacotes mysql-client/mysql-server . Depois de uma dúzia de tentativas fracassadas de resetar minha senha de root com o mysql-server (mesmo através de --skip-grant-tables techqiue mas ainda assim falhou), finalmente consegui 'torcer o braço do Linux até ele gritar' Uncle! '':

sudo dpkg -r mysql-server mysql-client
sudo apt-get autoclean  
## this dumps any copy of existing package to prevent apt-get from "re-using" it.
sudo apt-get build-dep mysql-client   
 ## one package at a time, starting with client first
sudo apt-get install mysql-client
sudo apt-get build-dep mysql-server
sudo apt-get install mysql-server

apt-get autoclean é a chave nesta solução

    
por Faron 21.03.2015 / 14:51
3

Durante a instalação de pacotes i386 em sistemas Ubuntu Multiarch de 64 bits

Se você está tentando instalar um pacote que depende de muitos pacotes i386, o erro de dependência acima também seria causado se você não adicionar a arquitetura i386 executando o comando sudo dpkg --add-architecure i386 .

Exemplo:

avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 skype : Depends: skype-bin but it is not installable
E: Unable to correct problems, you have held broken packages.
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo dpkg --add-architecture i386
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype-bin:i386 sni-qt:i386 zlib1g:i386
Suggested packages:
  nas:i386 glibc-doc:i386 locales:i386 rng-tools:i386 libglide3:i386
  gnutls-bin:i386 krb5-doc:i386 krb5-user:i386 libvisual-0.4-plugins:i386
  gstreamer-codec-install:i386 gnome-codec-install:i386
  gstreamer1.0-tools:i386 gstreamer1.0-plugins-base:i386 jackd2:i386
  pulseaudio:i386 libqt4-declarative-folderlistmodel:i386
  libqt4-declarative-gestures:i386 libqt4-declarative-particles:i386
  libqt4-declarative-shaders:i386 qt4-qmlviewer:i386 libqt4-dev:i386
  libicu48:i386 libthai0:i386 qt4-qtconfig:i386
Recommended packages:
  xml-core:i386
The following NEW packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype skype-bin:i386 sni-qt:i386 zlib1g:i386
0 upgraded, 115 newly installed, 0 to remove and 7 not upgraded.
Need to get 63.7 MB of archives.
After this operation, 225 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
    
por Avinash Raj 21.04.2014 / 09:46
1

Depois de ter tentado perto de todos os métodos mencionados neste tópico (e outros) eu estava perto de desistir. Eu atualizei meu Debian Lenny para o Squeeze, e não pude, durante minha vida, descobrir por que PHP5, Apache, MySQL etc. não queriam instalar. No final tentei usar

sudo apt-get purge apache2
sudo apt-get purge php5
sudo apt-get purge mysql-server
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install apache2 php5 mysql-server

.. e funcionou perfeitamente! ( Cuidado, pode destruir seus arquivos de configuração, então faça o backup deles! )

    
por h2ooooooo 15.01.2013 / 11:00
1

O que funcionou para mim é reinstalar a dependência. É o caso onde a versão instalada é mais recente que a mais recente (o que o synaptic mostra). Na verdade, é equivalente permitir que o synaptic faça o downgrade do pacote de dependências.

Outra coisa que funcionou é usar o "aptitude":

root@arau:~# aptitude install libgfortran3
The following NEW packages will be installed:
  libgfortran3{b} 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 250 kB of archives. After unpacking 1 230 kB will be used.
The following packages have unmet dependencies:
 libgfortran3 : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is installed.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     libgfortran3 [Not Installed]                       



Accept this solution? [Y/n/q/?] n
Internal error: found 2 (choice -> promotion) mappings for a single choice.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

      Downgrade the following packages:                                        
1)      cpp-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
2)      gcc-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
3)      gcc-4.8-base [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
4)      libasan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
5)      libatomic1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
6)      libgcc-4.8-dev [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
7)      libgomp1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
8)      libitm1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
9)      libquadmath0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
10)     libstdc++6 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
11)     libtsan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      

Accept this solution? [Y/n/q/?] y
    
por Bob Yoplait 19.04.2015 / 22:59
0

Se você está recebendo um erro como este:

Isso está dizendo que os pacotes já estão instalados, mas não instalou todos os outros pacotes necessários para funcionar. Você deve conseguir resolver isso executando:

sudo apt-get -f install

(Este comando deve instalar automaticamente as dependências não atendidas.)

ou algo parecido com isto (com os pacotes relevantes) :

sudo apt-get install click curl dpkg-dev python-lzma python-requests imagemagick ubuntu-dev-tools

Mas se você acabar com esse tipo de erro:

Você pode pesquisar maneiras de instalá-los aqui ou aqui .
Com o exemplo acima, você deve ser capaz de encontrar uma página como this e use um PPA , ou instale a .deb para 32bit ou um .deb para 64bit .

    
por Wilf 02.03.2014 / 11:44