“Mas é referido por outro pacote.” - Encontrando esse pacote

11

Não é incomum que um usuário do Ubuntu (ou outra distro com gerenciamento de pacotes apt) encontre o erro:

user@box ~ $ sudo apt-get install x
[sudo] password for user: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package x is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'x' has no installation candidate

Houve várias perguntas sobre isso em vários sites do StackExchange, por exemplo openvpn no AskUbuntu, mas estes são geralmente sobre como obter o pacote específico, apesar do erro.

Eu não encontrei nenhum pacote que não é encontrado simplesmente (embora nem sempre facilmente) determinando se ele ainda está distribuído, e sob qual repositório se está, e assegurando que o repositório esteja em apt.sources, ou o pior vem para o repositório. pior baixar um .deb ou fonte para compilar.

Então, minha pergunta é mais genérica, e embora eu esteja supondo que tenha uma resposta bastante simples e, portanto, não empolgante, não consigo pensar em como encontrá-la pelos métodos convencionais dos mecanismos de busca, por isso recorro ao AskUbuntu: um comando ou opção que posso usar para determinar qual pacote / quais pacotes fazem referência ao pacote ausente?

    
por Arlo James Barnes 15.12.2013 / 17:34

2 respostas

7

Você pode procurar o pacote com o apt-cache:

apt-cache search x

Isto produzirá todos os pacotes que, de uma maneira ou de outra, fazem uma referência a x.

    
por Henrique Ferreira 15.12.2013 / 17:38
10

Às vezes isso acontece porque o APT simplesmente não sabe nada sobre o que você está falando, mas isso pode ser resolvido executando:

apt-get update

Depois de executar isso, normalmente o erro desaparece porque apt e apt-get sabem como fazer o que eu peço agora.

    
por Wayne Workman 01.02.2017 / 02:30