Ocasionalmente, ao instalar 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 isto?
Respostas:
O APT é um sistema de gerenciamento de pacotes para o Debian e outras distribuições Linux baseadas nele, como o Ubuntu. Na maioria das vezes, o APT é fácil de usar para instalar, remover e atualizar pacotes. Em casos raros, geralmente quando você está misturando dependências de terceiros, há uma chance de que isso
apt-get
acabe causando um erro informando que uma instalação do pacote não pôde ser concluída.Soluções:
É sempre uma boa idéia fazer backup de arquivos de configuração como
/etc/apt/sources.list
, para que você possa reverter as alterações, se necessário.Se a
error
mostra algo como isto:<some-package>: Depends: <other-package> (= version) but this-version is to be installed
Em seguida, verifique se os repositórios
restricted
euniverse
estão ativados. Pressione Alt+ F2, digitesoftware-properties-gtk
e clique Enter.Na
Ubuntu Software
guia, ative todos os repositórios.Uma causa possível de dependências não atendidas pode ser o banco de dados do pacote corrompido e / ou alguns pacotes não foram instalados corretamente. Para corrigir esse problema, pressione Alt+ Ctrl+ Tpara abrir o terminal e tente executar um dos seguintes comandos:
ou,
apt-get clean
limpa o repositório local dos arquivos de pacotes recuperados (os arquivos .deb). Ele remove tudo, menos o arquivo de bloqueio de / var / cache / apt / archives / e / var / cache / apt / archives / parcial /.apt-get autoclean
limpa o repositório local de arquivos de pacote recuperados, mas, ao contrárioapt-get clean
, remove apenas os arquivos de pacote que não podem mais ser baixados e são amplamente inúteis.Uma das correções mais básicas para resolver problemas de dependências é executar:
O
-f
aqui significa "reparo 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, poderá simplesmente remover o pacote que você instalou para resolver o problema.Então corra:
Em seguida, execute isso novamente:
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:
Se mostrar algum pacote retido, é melhor eliminá-lo. Os pacotes são mantidos devido a conflitos de dependência que
apt
não podem ser resolvidos. Tente este comando para encontrar e reparar os conflitos:Se não conseguir 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
cada vez, até que não haja mais pacotes retidos. Em seguida, reinstale os pacotes necessários. Certifique-se de usar a--dry-run
opção para estar totalmente informado das consequências: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 possua 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 do código-fonte e criando pacotes " deb " para eles.
Desativar / remover / limpar PPAs:
Os PPAs (Personal Package Archive) são repositórios hospedados na Barra de Ativação . Você pode usar 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:
Desabilitar um PPA significa que não há mais atualizações para os pacotes instalados a partir desse PPA. Para desativar um PPA: Abra
Software Center > Edit > Software Sources
Ou,Pressione Alt+ F2e corra
software-properties-gtk
.Clique na
Other Software
guia, você verá que cada PPA tem duas linhas aqui, uma para os pacotes compilados e uma para a fonte,Uncheck
ambas as linhas para desativar um PPA. Aqui você também pode adicionar e remover PPAs.Purga:
Limpar um PPA significa fazer o downgrade dos pacotes no PPA selecionado para a versão nos repositórios oficiais do Ubuntu e desabilitar esse PPA. O PPA Purge faz exatamente isso. Para instalar o PPA Purge, execute o seguinte comando:
Mas, considerando que a pergunta
apt
está quebrada, o comando acima falhará. Então use este comandoPara usar a PPA Purge:
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 da desativação de um PPA e
Check
das duas linhas de um determinado PPA para habilitá-lo).Nota:
PPA Purge
não remove PPAs ( pode ser no futuro ); portanto, você deverá remover manualmente o PPA.Retirar:
Se o pacote instalado a partir de um PPA não existir nos repositórios oficiais do Ubuntu, o uso
PPA Purge
não é recomendado, porque não há nada para ser rebaixado ePPA Purge
também não seria excluído. Para remover um PPA e os pacotes instalados, execute os seguintes comandos: (Ignore o primeiro comando se não desejar remover os pacotes instalados)Como alternativa, você pode usar
Y PPA Manager
para desativar / remover / limpar os PPAs (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 no
Session Indicator
painel do Unity:Ou pressione Alt+ Ctrl+ Tpara abrir o terminal e execute os seguintes comandos:
Atualização: sincroniza sua lista de pacotes disponíveis com os servidores nos repositórios de origem. Atualização: baixa e instala as versões mais recentes dos pacotes instalados.
Remova PPAs duplicados.
Y PPA Manager
(guia de instalação no final da resposta) pode digitalizar e remover facilmente PPAs duplicados.y-ppa-manager
para abrir o Y PPA Manager.Advanced
.Scan and remove duplicate PPAs
e clique em OK.Conseguindo ajuda:
Ao pedir ajuda no Askubuntu ou em qualquer outro fórum de ajuda, inclua a saída dos seguintes comandos na sua pergunta:
Saída do erro real:
Isso mostrará seu sources.list:
Isso mostrará a lista de PPAs (se houver):
Fontes adicionais:
Y PPA Manager : O Y PPA Manager é um balcão único para todas as suas necessidades de PPA.
Aqui estão algumas de suas características:
Para instalar
Y PPA Manager
, abra o terminal pressionando Alt+ Ctrl+ Te execute os seguintes comandos:Considerando a pergunta,
apt
está quebrado, portanto, use esses comandose
32 bits:
64 bits:
fonte
Está realmente quebrado?
Tente executar o seguinte comando e tente reinstalar o software que você estava tentando instalar
Etapas de pré-desempenho
Fazendo backup
Faça backup dos seguintes arquivos:
/etc/apt/sources.list
/var/lib/dpkg/status
Para fazer isso, use estes comandos
e
Limpando seu apt-cache
apt
mantém um cache de pacotes baixados recentemente para economizar largura de banda quando é necessário instalar. Isso pode ser contraproducente em alguns casosAgora, para limpá-lo, você tem duas opções
Isso removerá todos os pacotes em cache pertencentes à pasta
/var/cache/apt/archives/
e/var/cache/apt/archives/partial
exceto os arquivos .lock. Isto é recomendadoEste explora 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 sãoCorrigindo dependências
Usando o modo reparo-quebrado do apt
Isso fará com que o apt verifique as dependências ausentes e corrija-as nos repositórios
Se a saída indicar que nada de novo foi instalado ou atualizado, ela falhou.
Verificando se todas as fontes necessárias estão ativadas
Digite
gksu software-properties-gtk
e você verá esta janelaVerifique se todas as fontes estão ativadas.
Em seguida, vá para a guia Outro software e verifique se os PPAs necessários para a instalação do software estão lá e estão ativados. Além disso, tente desativar alguns PPAs que podem estar com pacotes quebrados
agora corra
sudo apt-get update
Tente instalar o software agora
Selecionando um servidor melhor para baixar
Digite
gksu software-properties-gtk
e você verá esta janelaClique no Download na caixa suspensa e selecione outro
Clique em Selecionar melhor servidor
Corre
sudo apt-get update
Tente instalar o software
Além disso, tente usar
sudo apt-get install -f
PPA Purge
Esta é uma ferramenta usada para limpar ppa's quebrados / indesejados e suas aplicações junto com ele
Para instalá-lo, execute
Mas, Considerando que a pergunta
apt
está quebrada, o comando acima falhará. Então use este comandoAgora use ppa purge
Gerente Y-PPA
O Y-PPA Manager é um aplicativo de interface gráfica que ajuda você a gerenciar PPAs e vários problemas associados a ele
Para instalá-lo
e
e
Considerando a pergunta,
apt
está quebrado, então use estes comandose
32 bits:
64 bits:
Agora digite
y-ppa-manager
Você verá esta janela
Clique duas vezes em avançado e você verá esta janela
Execute as seguintes tarefas descritas em preto
Prevenção é melhor que a cura
É melhor prevenir do que procurar esta pergunta no AskUbuntu: D
Então, aqui estão as diretrizes para mantê-lo seguro
Mantenha seu sistema atualizado
sempre execute o seguinte comando regularmente
ou, você sempre pode usar o Update Manager com este comando
Usando apenas PPAs confiáveis
Use apenas PPAs destinados a serem usados no Ubuntu também, use apenas PPAs com fontes confiáveis. De fato, o pacote já pode 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
Você verá esta janela
Clique duas vezes em avançado e você verá esta janela
Rode isto:
Você será solicitado a salvar um arquivo tar.gz com uma caixa de diálogo semelhante à abaixo. Salve-o em outra partição ou em um local seguro
Posteriormente, quando precisar restaurá-lo novamente, siga as etapas semelhantes e, quando chegar à caixa de diálogo avançada, clique aqui:
Você será solicitado a restaurar a partir do backup anterior que você salvou anteriormente com uma caixa de diálogo semelhante à abaixo
Ainda não funciona?
Os erros de dependência do pacote nem sempre são genéricos e dependem do pacote a ser instalado.
Se seguir todas as etapas fornecidas para corrigir o erro não funcionar, você sempre pode perguntar no Ask Ubuntu
Aqui estão alguns comandos que você precisa para postar a saída de
e
e
(Obrigado a Basharat Sial )
Também existem outros arquivos / comandos dos quais você precisa que possam ser específicos para erros, e os usuários provavelmente solicitarão que você nos comentários publique o arquivo / comando.
fonte
apt-get update
perto do topo da lista. Às vezes, seu sistema fez uma atualização em que um pacote mais recente foi atualizado remotamente, mas um dos quais depende ainda não terminou de compilar. Ou a versão que você possui no cache local foi atualizada. Nesses casos, um simplesapt-get update
atualizará seu cache local e você poderá continuar.apt-get install -f
não o corrigiu.-f
bandeira representa força e sempre evitado usá-loAté agora, essas respostas estão focadas em como resolver esse problema automaticamente, principalmente na esperança de que ele se resolva, mas não no entendimento de 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 esmagadoras, mas o conceito é simples e essencial para entender como o software é instalado / desinstalado em um sistema Ubuntu.
Eu recomendo o aptitude para quem usa um sistema baseado em .deb como o Ubuntu. Sua estrutura em árvore permite procurar facilmente dependências, incluindo pacotes recomendados e sugeridos, além de visualizar 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. (O Synaptic também está disponível no Ubuntu, mas não acho tão intuitivo.)
O Aptitude também oferece um solucionador de conflitos que o guiará por 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 puder encontrar uma solução. Como usuário do Ubuntu, normalmente não ocorrem situações que exigem que você investigue por que esse pacote específico está sendo instalado, mas é quase inevitável que você use mais o sistema.
fonte
aptitude
o solucionador de conflitos.sudo aptitude --full-resolver my_package
. Isso geralmente forneceThe following packages have unmet dependencies
uma lista entre as quais7) <my_package> [Not Installed]
(7 é apenas um exemplo). A cada passo, o aptitude oferece novas opções. O que funcionou para mim foi escolher primeiro7
, depoisr 7
(que corresponde à descriçãoRejecting the removal of my_package
) e depoisn
(para NÃO) como as opções anteriores que não eram o que eu queria: mas depois disso, novas opções ofereciam a desclassificação de alguns pacotes e a instalação do my_package; so, last,Y
(for YES)package1: Depende: package2 (> = 1.8) mas 1.7.5-1ubuntu1 deve ser instalado
Explicação da mensagem:
Consertar
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 pré-condições que levam a esse erro.
Cenário A:
Todos os repositórios aos quais você tem acesso não possuem package2 na versão> = 1.8, portanto, você precisará encontrar um repositório que possua. Se você não conseguir encontrar um repositório com versões> = 1.8, poderá ser necessário criar e instalar o package2 a partir da fonte. E, em seguida, tente instalar o package1.
Se você quiser saber como criar um pacote a partir da fonte, verifique outras perguntas / respostas ou poste um novo.
Cenário B:
Os repositórios incluem package2 em uma versão> = 1.8, mas o gerenciador de pacotes ainda deseja instalar uma versão mais antiga (1.7.5).
A razão para isso pode ser que as versões posteriores do pacote2 foram criadas por alguma tecnologia mais recente que não é suportada por outros pacotes que você já instalou.
Talvez isso não seja possível de corrigir. Você pode tentar usar o apt ou o synaptic e procurar todas as versões do pacote2 disponíveis nos repositórios e tentar instalar uma versão específica> = 1.8
Se você tiver outros pacotes incompatíveis e fizer isso, receberá uma lista de mensagens de erro semelhantes para todos os outros pacotes que impedem a instalação do package2> = 1.8.
Nesse caso, você tem um problema maior. Você queria instalar o package1, que precisa que o package2 seja> = 1.8, mas o package2 na versão> = 1.8 exige que o package3 esteja na versão> = 6.7 e você possui o package3 versão 6.3
O fato é que o gerenciador de pacotes (APT) tenta resolver todas essas dependências automaticamente, se possível. Quando diz que não é possível (e emite uma mensagem como na pergunta), você deve confiar nela.
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 necessárias específicas de todos os pacotes, uma por uma, e espere estar OK.
Cuidado, fazer isso para pacotes do sistema pode criar problemas sérios. Você pode se bloquear do sistema, bloquear serviços críticos etc.
Cenário C:
Independentemente das 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 e necessárias do código-fonte. Com esta opção, você pode manter o que foi construído em um diretório separado e fora do caminho do sistema, para que 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 consegue encontrar uma solução. Veja as outras respostas.
Cenário E:
O gerenciador de pacotes possui um erro no código de resolução de dependências.
Você precisa investigar se esse é realmente o caso e emitir uma solicitação de erro.
...
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 <1.8 e na especificação eles definiram dependências incorretas.
fonte
Esses métodos precisam ser seguidos sempre que você errar em relação às 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
Limpando o cache do apt:
Limpando quaisquer dependências não utilizadas:
Atualizando o apt-cache
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 dará algumas sugestões sobre como remover e instalar pacotes, faça o que parecer razoável.
3 . Alterar o
Download Server
deSoftware Sources
Porque às vezes os arquivos em um servidor estão corrompidos.4 . Isso também acontece se você tiver adicionado anteriormente um ppa externo para a dependência quebrada.
sudo add-apt-repository --remove ppa:someppa/ppa
e removendo manualmente os arquivos / bibliotecas instalados pelo ppaou
limpando um ppa (isso remove os arquivos instalados também)
5 . Se não for o caso 4, pelo menos tente remover o pacote que está sendo mostrado como uma dependência quebrada. Em seguida, tente instalar novamente. Isso é relatado como tendo sido causado por 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 ativados (Entrada
Software Sources
)Por favor, não ative o
Proposed Updates
que se destina a testes / desenvolvedores.Como dito por doug:
Além disso, não é observado que em muitos casos, se não na maioria dos casos, "<whatever> deve ser instalado" realmente significa "<whatever> está instalado" e deve ser tentado removê-lo se nada funcionar (como no ponto 5).
Continuarei adicionando mais coisas que encontrarei para corrigir
unmet dependencies
.fonte
apt-get update
que não atualizar o cache do apt (que consiste em baixados.deb
arquivos e um arquivo que armazena informações sobre quais.deb
arquivos armazenados). Ele atualiza os arquivos de índice de pacotes (que consistem em informações sobre quais pacotes estão disponíveis para serem baixados e instalados em cada fonte de software disponível). Como eu disse antes,apt-get clean
não limpa a mesma coisa queapt-get update
atualiza. Vejaman apt-get
para detalhes.Na maioria dos casos, a instalação do pacote
aptitude
resolverá dependências não atendidas.Por padrão, oaptitude
pacote não foi instalado no seu pc.Por isso, primeiro instale-o executando,então,
Por exemplo,
Instalando o pacote por meio de
aptitude
fonte
aptitude
, o problema de dependências não deveria ser resolvido?aptitude
sem resolver o problema primeiro!aptitude
. Se não houve erro causado por pacotes quebrados, você poderá instalar o aptitude.Minha resposta é semelhante à de Rick acima.
Usando
apt-get clean
,apt-get autoclean
,apt-get autoremove
,apt-get upgrade
,apt-get update
,apt-get -u dist-upgrade
, etc, tudo não funcionou para mim.Finalmente resolvi esse problema descendo para a árvore de dependências via
apt-get install
, ilustrada com um exemplo abaixo. No meu caso, eu queria instalarlibmagickwand-dev
:Eu recebi este erro:
Então, eu corri
apt-get install
para uma das dependências com falha:Desci mais abaixo na árvore:
com outro erro:
Mais uma vez mais abaixo na árvore:
Por alguma estranha razão, isso foi bem-sucedido e eu consegui instalar o pacote original com o qual queria
apt-get install libmagickwand-dev
:fonte
Excelentes respostas! Mas hoje meu caso parece diferente do seu. Aqui está o meu conselho.
Problema:
Falha ao instalar o apache2 no ubuntu 10.10.
Solução:
Meu caminho é adicionar o pacote dependente na lista de instalação.
Se 'sudo apt-get install apache2' falhar, tente ' sudo apt-get install apache2 apache2.2-common '.
Vejo? O apache2.2-common vem do log de erros da etapa anterior.
Por fim, descobri que há uma cadeia de dependência como esta:
Nos 3 primeiros pacotes, o apt-get log me disse 'não será instalado',
mas para o último pacote, ele mostra 'libaprutil1-ldap: Depends: 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 na minha lib, então:
Agora está tudo bem.
fonte
O que é dependências não atendidas?
No Ubuntu, os pacotes são a principal maneira de compilar, implantar e instalar o software. Muito simplesmente, os pacotes são uma alternativa para baixar, criar e instalar software a partir do zero. Eles oferecem inúmeras vantagens em termos de instalação, remoção, monitoramento e manipulação de interações entre partes de software sobre o modelo padrão "build from source". O Ubuntu usa um sistema de empacotamento centralizado, ou seja, todo pacote depende 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
Vamos tentar resolvê-lo
Verifique se todos os repositórios padrão estão ativados
-> Você pode adicioná-los facilmente em
Software Center
-> Editar-> Fontes de software-> Outras fontes-> Adicionar "-> Inicie o
Software Center
.->. No painel, vá para
Edit
e selecioneSoftware Sources
.-> Verifique se todos os repositórios estão marcados
Atualize o catálogo de 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. digite ctrl+ alt+ tpara abrir o terminal e digite
sudo apt-get install -f
5.Purge o ppa adicionado recentemente usando ppa-purge ppa-purge
Sintaxe
Exemplo
Caso contrário, digite ctrl+ alt+ tpara abrir o terminal e digite
sudo apt-get install -f
e siga as instruções na telaSe o erro persistir, sinta-se à vontade para perguntar no askbuntu
fonte
... não se esqueça do `build-dep`
Além das respostas acima - tenho que admitir que estou surpreso por ninguém ter mencionado essa abordagem, que é o que sempre usei como uma "bala de prata" em qualquer momento que encontrei conflitos apt-get ou pacotes não resolvidos (ou até se o sistema estiver sendo teimoso .... ha!).
EDITADO: o uso
sudo dpkg -r [package]
é incentivado, pois possui uma função de remoção bastante poderosa. Desde queapt-get
trabalha junto comdpkg
, o que significa queapt-get
irá obedecer adpkg
função.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 pegará e instalará as dependências individualmente pertencentes a este pacote, para que elas satisfaçam o pacote antes. Por fim, chame o apt-get install:
.... 'Ugh! Vamos torcer o braço até você gritar "Tio!"
Isso raramente acontecia durante meus longos anos de uso do linux, mas me vi usando essa abordagem raramente e consegui. Este é um exemplo da recente luta que tive no mês passado com pacotes
mysql-client/mysql-server
. Depois de uma dúzia de tentativas fracassadas de redefinir minha senha root com o mysql-server (mesmo via --skip-grant-tables techqiue, mas ainda falhou), finalmente consegui 'torcer o braço do Linux até gritar "Tio!"':apt-get autoclean
é a chave nesta soluçãofonte
Durante a instalação dos pacotes i386 em sistemas Ubuntu Multiarch de 64 bits
Se você estiver tentando instalar um pacote que depende de muitos pacotes do i386, o erro de dependência indicado acima também será causado se você não adicionar a arquitetura do i386 executando o
sudo dpkg --add-architecure i386
comandoExemplo:
fonte
vlc
) depois de instalar o skype e obtive a dependência não atendida. Saí de uma situação semelhante adicionando:amd64
no final do nome do pacote que estava causando o erro. como você se recuperou? qual seria a melhor solução?Depois de tentar perto de todos os métodos mencionados neste tópico (e outros), eu estava quase desistindo. Eu atualizei meu Debian Lenny para o Squeeze e não consegui descobrir por que PHP5, Apache, MySQL etc. não queriam instalar. No final, tentei usar
..e funcionou perfeitamente! ( Cuidado, isso pode destruir seus arquivos de configuração, então faça backup deles! )
fonte
O que funcionou para mim é reinstalar a dependência. É o caso em que a versão instalada é mais recente que a mais recente (o que mostra sináptica). Na verdade, é equivalente permitir que o synaptic faça o downgrade do pacote de dependência.
Outra coisa que funcionou é usar o "aptitude":
fonte
Se você estiver recebendo um erro como este:
Isso está lhe 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 o seguinte:
(Este comando deve instalar automaticamente as dependências não atendidas.)
ou algo assim (com os pacotes relevantes) :
Mas se você acabar com esse tipo de erro:
Você pode procurar maneiras de instalá-los aqui ou aqui .
Com o exemplo acima, você poderá encontrar uma página como esta e, em seguida, use um PPA ou instale um .deb para 32 bits ou um .deb para 64 bits .
fonte