incluso después de limpiar con apt-get clean dice que hay paquetes rotos. sudo dpkg -l | grep ^..r como se menciona en [1] no devuelve nada.
$ sudo apt-get install build-essential 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: build-essential : Depends: libc6-dev but it is not going to be installed or libc-dev Depends: g++ (>= 4:9.2) but it is not going to be installed E: Unable to correct problems, you have held broken packages.[1] https://www.techbrown.com/arreglar-paquetes-rotos-ubuntu-debian/
Supongo que encontré una solución súper simple por casualidad. Sin degradación ni compilaciones del kernel. acaba de correr
sudo apt update && sudo apt upgrade -yHubo 3 repositorios que devolvieron errores en mi caso. Tal como,
E: The repository 'cdrom://Ubuntu 20.04 LTS _Focal Fossa_ - Release amd64 (20200423) focal Release' does not have a Release file.Acabo de iniciar el actualizador de software, eliminé los PPA con errores, ahora puedo instalar un nuevo software sin obtener
Depends: libc6 (>= 2.33) but 2.31-0ubuntu9.2 is to be installederror.
Después de buscar una respuesta, pensé en instalar manualmente la versión "correcta" y me encontré con esto al descargar el archivo pkg:
Agregue la siguiente línea a /etc/apt/sources.list:
deb http://archive.ubuntu.com/ubuntu/ focal-proposed mainActualice el índice del paquete:
sudo apt-get updateDespués de agregar este repositorio, pude instalar build-essential con el comando:
sudo apt-get install build-essentialTL; DR: tuve que degradar libc6 y luego pude instalar build-essential
Experimenté lo mismo:
$ sudo apt install build-essential 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: build-essential : Depends: libc6-dev but it is not going to be installed or libc-dev Depends: g++ (>= 4:9.2) but it is not going to be installed E: Unable to correct problems, you have held broken packages.Esto es lo que hice para arreglarlo.
Verifiqué apt-cache policy g++ , pensé que esto ya estaba satisfecho, así que seguí adelante:
$ apt-cache policy g++ g++: Installed: (none) Candidate: 4:9.3.0-1ubuntu2 Version table: 4:9.3.0-1ubuntu2 500 500 http://mirrors.xtom.com/ubuntu focal/main amd64 Packages Se comprobó apt-cache policy libc6-dev :
$ apt-cache policy libc6-dev libc6-dev: Installed: (none) Candidate: 2.31-0ubuntu9.2 Version table: 2.31-0ubuntu9.2 500 500 http://mirrors.xtom.com/ubuntu focal-updates/main amd64 Packages 2.31-0ubuntu9 500 500 http://mirrors.xtom.com/ubuntu focal/main amd64 PackagesIntenté instalar una versión específica (la última que se muestra arriba):
$ sudo apt install libc6-dev=2.31-0ubuntu9.2 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: libc6-dev : Depends: libc6 (= 2.31-0ubuntu9.2) but 2.31-0ubuntu9.3 is to be installed E: Unable to correct problems, you have held broken packages. Hice lo mismo, intenté instalar esa versión específica de libc6 :
$ sudo apt install libc6=2.31-0ubuntu9.2 Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: glibc-doc The following packages will be DOWNGRADED: libc6 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded. Need to get 2,715 kB of archives. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] ... dpkg: warning: downgrading libc6:amd64 from 2.31-0ubuntu9.3 to 2.31-0ubuntu9.2 ... Énfasis en la advertencia que recibí: dpkg: warning: downgrading libc6:amd64 from 2.31-0ubuntu9.3 to 2.31-0ubuntu9.2
Ahora pude instalar build-essential :
$ sudo apt install build-essential Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: g++ g++-9 libc-dev-bin libc6-dev libcrypt-dev libstdc++-9-dev linux-libc-dev manpages-dev Suggested packages: g++-multilib g++-9-multilib gcc-9-doc glibc-doc libstdc++-9-doc The following NEW packages will be installed: build-essential g++ g++-9 libc-dev-bin libc6-dev libcrypt-dev libstdc++-9-dev linux-libc-dev manpages-dev 0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded. Need to get 16.2 MB of archives. After this operation, 77.1 MB of additional disk space will be used. Do you want to continue? [Y/n] Leí varias publicaciones diferentes de stackoverflow que me llevaron a usar el apt-cache policy $package que no estaba familiarizado. Entonces simplemente jugué.
Debe solicitar el soporte de 'Canonical Partners' de Software & Updates.
Software y actualizaciones de Ubuntu20
Marque 'tick' en Canonical Partners (no en el código fuente) y luego haga
sudo apt install build-essential