![Dependência quebrada do Ubuntu 19.04 apt: mono](https://rvso.com/image/1605182/Depend%C3%AAncia%20quebrada%20do%20Ubuntu%2019.04%20apt%3A%20mono.png)
Estou tendo um problema com o apt no Ubuntu 19.04. Toda vez que tento instalar ou atualizar um pacote apt aparece o seguinte erro:
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
mono-complete : Depends: mono-roslyn (= 6.4.0.198-0xamarin3+ubuntu1804b1) but it is not going to be installed
mono-devel : Depends: mono-roslyn (= 6.4.0.198-0xamarin3+ubuntu1804b1) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
Ao executar sudo apt -f install
me deparei com o seguinte erro:
dpkg: error processing archive /var/cache/apt/archives/mono-roslyn_6.4.0.198-0xamarin3+ubuntu1804b1_all.deb (--unpack):
trying to overwrite '/usr/bin/csc', which is also in package chicken-bin 4.13.0-1
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/mono-roslyn_6.4.0.198-0xamarin3+ubuntu1804b1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Resumindo: mono-roslyn
está tentando sobrescrever o csc
binário, que é usado atualmente pelo chicken-bin
(compilador do esquema CHICKEN).
Tentei mover o csc
binário de /usr/bin/csc
para /usr/bin/csc-chicken
para verificar se isso resolveria o problema. Isso não aconteceu e ainda tenho o mesmo erro.
Já tive problemas com relação ao apt e ao mono antes, que corrigi com o sudo apt autoremove
, que me deu o mesmo erro que o primeiro mostrado aqui.
Preciso corrigir esse problema para poder atualizar ou instalar novos pacotes em meu sistema. Como você pode imaginar, este é um assunto bastante urgente.
Responder1
Depois de alguns dias cheguei a uma solução. Decidi apenas remover chicken-bin
para que o mono pudesse ser instalado corretamente (não o ideal, mas minha melhor opção). Como eu disse na minha pergunta apt remove
não funcionaria, mas descobri que poderia remover o pacote usando dpkg
.
Os seguintes comandos corrigiram meu problema:
$ sudo dpkg --remove --force-remove-reinstreq chicken-bin
$ sudo apt -f install
Espero que alguém ache isso útil.