build-essential apt errore

Asked by Cody Madison

Su vari PC con installato ubuntu 20.04 LTS (perfettamente aggiornato all'ultima versione disponibile) provando a installare con il comando: "sudo apt install build-essential" si riceve il seguente errore:

$ sudo apt install build-essential
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze
Lettura informazioni sullo stato... Fatto
Alcuni pacchetti non possono essere installati. Questo può voler dire
che è stata richiesta una situazione impossibile oppure, se si sta
usando una distribuzione in sviluppo, che alcuni pacchetti richiesti
non sono ancora stati creati o sono stati rimossi da Incoming.
Le seguenti informazioni possono aiutare a risolvere la situazione:

I seguenti pacchetti hanno dipendenze non soddisfatte:
 build-essential : Dipende: libc6-dev ma non sta per essere installato oppure
                            libc-dev
                   Dipende: g++ (>= 4:9.2) ma non sta per essere installato
E: Impossibile correggere i problemi, ci sono pacchetti danneggiati bloccati.

Potreste verificare se il problema si può risolvere in qualche modo?

Vi ringrazio anticipatamente.

Question information

Language:
Italian Edit question
Status:
Solved
For:
Ubuntu Edit question
Assignee:
No assignee Edit question
Solved by:
Manfred Hampl
Solved:
Last query:
Last reply:
Revision history for this message
Manfred Hampl (m-hampl) said :
#1

This is not a question for Launchpad itself, but for Ubuntu. This is why I have moved that question to the right area.

For diagnostic purposes, what is the output of the following commands (to be executed in a terminal window):

uname -a
lsb_release -crid
sudo dpkg --audit
apt-cache policy build-essential libc-dev g++
apt --simulate install build-essential libc-dev g++

Revision history for this message
Cody Madison (codymad) said :
#2

$ uname -a
Linux XPS-9360 5.11.0-25-generic #27~20.04.1-Ubuntu SMP Tue Jul 13 17:41:23 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

$ lsb_release -crid
Distributor ID: Ubuntu
Description: Ubuntu 20.04.2 LTS
Release: 20.04
Codename: focal

$ sudo dpkg --audit
build-essential:
  Installato: (nessuno)
  Candidato: 12.8ubuntu1.1
Tabella versione:
     12.8ubuntu1.1 500
        500 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
     12.8ubuntu1 500
        500 http://it.archive.ubuntu.com/ubuntu focal/main amd64 Packages
libc-dev:
  Installato: (nessuno)
  Candidato: (nessuno)
  Tabella versione:
g++:
  Installato: (nessuno)
  Candidato: 4:9.3.0-1ubuntu2
  Tabella versione:
     4:9.3.0-1ubuntu2 500
        500 http://it.archive.ubuntu.com/ubuntu focal/main amd64 Packages

$ apt --simulate install build-essential libc-dev g++
Nota: questa è solo una simulazione.
      apt necessita dei privilegi di root per la normale esecuzione.
      Inoltre, il meccanismo di blocco non è attivato e non è quindi
      utile dare importanza a tutto ciò per una situazione reale.
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze
Lettura informazioni sullo stato... Fatto
Nota, viene selezionato "libc6-dev" al posto di "libc-dev"
Alcuni pacchetti non possono essere installati. Questo può voler dire
che è stata richiesta una situazione impossibile oppure, se si sta
usando una distribuzione in sviluppo, che alcuni pacchetti richiesti
non sono ancora stati creati o sono stati rimossi da Incoming.
Le seguenti informazioni possono aiutare a risolvere la situazione:

I seguenti pacchetti hanno dipendenze non soddisfatte:
 build-essential : Dipende: libc6-dev ma non sta per essere installato oppure
                            libc-dev
                   Dipende: g++ (>= 4:9.2) ma non sta per essere installato
E: Impossibile correggere i problemi, ci sono pacchetti danneggiati bloccati.

That's all, thank you.

Revision history for this message
Manfred Hampl (m-hampl) said :
#3

Please repeat with the following commands and copy/paste the output as done before:

LANG=C sudo apt update
LANG=C sudo dpkg --audit
LANG=C apt --simulate install libc6-dev g++ build-essential

Revision history for this message
Cody Madison (codymad) said :
#4

Look at this link:

https://bugs.launchpad.net/ubuntu/+source/build-essential/+bug/1920753

The problem I have is the same.

It is not only my problem, but is a problem of Ubuntu 20.04 LTS.

Thank you.

Revision history for this message
Manfred Hampl (m-hampl) said :
#5

If you look at the bug report, then you see that the problem disappeared without finding the reason.

Please provide the output that I asked for:

LANG=C sudo apt update
LANG=C sudo dpkg --audit
LANG=C apt --simulate install libc6-dev g++ build-essential

Revision history for this message
Cody Madison (codymad) said :
#6

$ LANG=C sudo apt update
Hit:1 http://it.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://it.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:3 http://it.archive.ubuntu.com/ubuntu focal-backports InRelease
Hit:4 http://archive.canonical.com/ubuntu focal InRelease
Hit:5 http://security.ubuntu.com/ubuntu focal-security InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
4 packages can be upgraded. Run 'apt list --upgradable' to see them.

$ LANG=C sudo dpkg --audit

$ LANG=C apt --simulate install libc6-dev g++ build-essential
NOTE: This is only a simulation!
      apt needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
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.

That's all, thank you.

Revision history for this message
Manfred Hampl (m-hampl) said :
#7

Try the command

sudo apt install libc6=2.31-0ubuntu9.2 build-essential

and report the results.

Revision history for this message
Cody Madison (codymad) said :
#8

$ sudo apt install libc6=2.31-0ubuntu9.2 build-essential
[sudo] password:
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze
Lettura informazioni sullo stato... Fatto
I seguenti pacchetti sono stati installati automaticamente e non sono più richiesti:
  libfprint-2-tod1 libllvm10 libllvm11
Usare "sudo apt autoremove" per rimuoverli.
I seguenti pacchetti aggiuntivi saranno inoltre installati:
  dpkg-dev fakeroot g++ g++-9 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libc6-dev libcrypt-dev libfakeroot libstdc++-9-dev linux-libc-dev make
Pacchetti suggeriti:
  debian-keyring g++-multilib g++-9-multilib gcc-9-doc glibc-doc libstdc++-9-doc make-doc
I seguenti pacchetti saranno RIMOSSI:
  libc6-dbg
I seguenti pacchetti NUOVI saranno installati:
  build-essential dpkg-dev fakeroot g++ g++-9 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libc6-dev libcrypt-dev libfakeroot libstdc++-9-dev
  linux-libc-dev make
I seguenti pacchetti saranno RETROCESSI:
  libc6
0 aggiornati, 14 installati, 1 retrocessi, 1 da rimuovere e 4 non aggiornati.
È necessario scaricare 17,6 MB di archivi.
Dopo quest'operazione, verranno liberati 594 kB di spazio su disco.
Continuare? [S/n] S
Scaricamento di:1 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 libc6 amd64 2.31-0ubuntu9.2 [2.715 kB]
Scaricamento di:2 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-libc-dev amd64 5.4.0-80.90 [1.129 kB]
Scaricamento di:3 http://it.archive.ubuntu.com/ubuntu focal/main amd64 libcrypt-dev amd64 1:4.4.10-10ubuntu4 [104 kB]
Scaricamento di:4 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 libc6-dev amd64 2.31-0ubuntu9.2 [2.520 kB]
Scaricamento di:5 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 libstdc++-9-dev amd64 9.3.0-17ubuntu1~20.04 [1.714 kB]
Scaricamento di:6 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 g++-9 amd64 9.3.0-17ubuntu1~20.04 [8.405 kB]
Scaricamento di:7 http://it.archive.ubuntu.com/ubuntu focal/main amd64 g++ amd64 4:9.3.0-1ubuntu2 [1.604 B]
Scaricamento di:8 http://it.archive.ubuntu.com/ubuntu focal/main amd64 make amd64 4.2.1-1.2 [162 kB]
Scaricamento di:9 http://it.archive.ubuntu.com/ubuntu focal/main amd64 dpkg-dev all 1.19.7ubuntu3 [679 kB]
Scaricamento di:10 http://it.archive.ubuntu.com/ubuntu focal-updates/main amd64 build-essential amd64 12.8ubuntu1.1 [4.664 B]
Scaricamento di:11 http://it.archive.ubuntu.com/ubuntu focal/main amd64 libfakeroot amd64 1.24-1 [25,7 kB]
Scaricamento di:12 http://it.archive.ubuntu.com/ubuntu focal/main amd64 fakeroot amd64 1.24-1 [62,6 kB]
Scaricamento di:13 http://it.archive.ubuntu.com/ubuntu focal/main amd64 libalgorithm-diff-perl all 1.19.03-2 [46,6 kB]
Scaricamento di:14 http://it.archive.ubuntu.com/ubuntu focal/main amd64 libalgorithm-diff-xs-perl amd64 0.04-6 [11,3 kB]
Scaricamento di:15 http://it.archive.ubuntu.com/ubuntu focal/main amd64 libalgorithm-merge-perl all 0.08-3 [12,0 kB]
Recuperati 17,6 MB in 1s (11,8 MB/s)
Preconfigurazione dei pacchetti in corso
(Lettura del database... 200196 file e directory attualmente installati.)
Rimozione di libc6-dbg:amd64 (2.31-0ubuntu9.3)...
dpkg: attenzione: retrocessione di libc6:amd64 dalla versione 2.31-0ubuntu9.3 alla 2.31-0ubuntu9.2
(Lettura del database... 199882 file e directory attualmente installati.)
Preparativi per estrarre .../libc6_2.31-0ubuntu9.2_amd64.deb...
Estrazione di libc6:amd64 (2.31-0ubuntu9.2) su (2.31-0ubuntu9.3)...
Configurazione di libc6:amd64 (2.31-0ubuntu9.2)...
Selezionato il pacchetto linux-libc-dev:amd64 non precedentemente selezionato.
(Lettura del database... 199882 file e directory attualmente installati.)
Preparativi per estrarre .../00-linux-libc-dev_5.4.0-80.90_amd64.deb...
Estrazione di linux-libc-dev:amd64 (5.4.0-80.90)...
Selezionato il pacchetto libcrypt-dev:amd64 non precedentemente selezionato.
Preparativi per estrarre .../01-libcrypt-dev_1%3a4.4.10-10ubuntu4_amd64.deb...
Estrazione di libcrypt-dev:amd64 (1:4.4.10-10ubuntu4)...
Selezionato il pacchetto libc6-dev:amd64 non precedentemente selezionato.
Preparativi per estrarre .../02-libc6-dev_2.31-0ubuntu9.2_amd64.deb...
Estrazione di libc6-dev:amd64 (2.31-0ubuntu9.2)...
Selezionato il pacchetto libstdc++-9-dev:amd64 non precedentemente selezionato.
Preparativi per estrarre .../03-libstdc++-9-dev_9.3.0-17ubuntu1~20.04_amd64.deb...
Estrazione di libstdc++-9-dev:amd64 (9.3.0-17ubuntu1~20.04)...
Selezionato il pacchetto g++-9 non precedentemente selezionato.
Preparativi per estrarre .../04-g++-9_9.3.0-17ubuntu1~20.04_amd64.deb...
Estrazione di g++-9 (9.3.0-17ubuntu1~20.04)...
Selezionato il pacchetto g++ non precedentemente selezionato.
Preparativi per estrarre .../05-g++_4%3a9.3.0-1ubuntu2_amd64.deb...
Estrazione di g++ (4:9.3.0-1ubuntu2)...
Selezionato il pacchetto make non precedentemente selezionato.
Preparativi per estrarre .../06-make_4.2.1-1.2_amd64.deb...
Estrazione di make (4.2.1-1.2)...
Selezionato il pacchetto dpkg-dev non precedentemente selezionato.
Preparativi per estrarre .../07-dpkg-dev_1.19.7ubuntu3_all.deb...
Estrazione di dpkg-dev (1.19.7ubuntu3)...
Selezionato il pacchetto build-essential non precedentemente selezionato.
Preparativi per estrarre .../08-build-essential_12.8ubuntu1.1_amd64.deb...
Estrazione di build-essential (12.8ubuntu1.1)...
Selezionato il pacchetto libfakeroot:amd64 non precedentemente selezionato.
Preparativi per estrarre .../09-libfakeroot_1.24-1_amd64.deb...
Estrazione di libfakeroot:amd64 (1.24-1)...
Selezionato il pacchetto fakeroot non precedentemente selezionato.
Preparativi per estrarre .../10-fakeroot_1.24-1_amd64.deb...
Estrazione di fakeroot (1.24-1)...
Selezionato il pacchetto libalgorithm-diff-perl non precedentemente selezionato.
Preparativi per estrarre .../11-libalgorithm-diff-perl_1.19.03-2_all.deb...
Estrazione di libalgorithm-diff-perl (1.19.03-2)...
Selezionato il pacchetto libalgorithm-diff-xs-perl non precedentemente selezionato.
Preparativi per estrarre .../12-libalgorithm-diff-xs-perl_0.04-6_amd64.deb...
Estrazione di libalgorithm-diff-xs-perl (0.04-6)...
Selezionato il pacchetto libalgorithm-merge-perl non precedentemente selezionato.
Preparativi per estrarre .../13-libalgorithm-merge-perl_0.08-3_all.deb...
Estrazione di libalgorithm-merge-perl (0.08-3)...
Configurazione di libalgorithm-diff-perl (1.19.03-2)...
Configurazione di linux-libc-dev:amd64 (5.4.0-80.90)...
Configurazione di libfakeroot:amd64 (1.24-1)...
Configurazione di fakeroot (1.24-1)...
update-alternatives: viene usato /usr/bin/fakeroot-sysv per fornire /usr/bin/fakeroot (fakeroot) in modalità automatica
Configurazione di make (4.2.1-1.2)...
Configurazione di libcrypt-dev:amd64 (1:4.4.10-10ubuntu4)...
Configurazione di libc6-dev:amd64 (2.31-0ubuntu9.2)...
Configurazione di libalgorithm-diff-xs-perl (0.04-6)...
Configurazione di libalgorithm-merge-perl (0.08-3)...
Configurazione di libstdc++-9-dev:amd64 (9.3.0-17ubuntu1~20.04)...
Configurazione di dpkg-dev (1.19.7ubuntu3)...
Configurazione di g++-9 (9.3.0-17ubuntu1~20.04)...
Configurazione di g++ (4:9.3.0-1ubuntu2)...
update-alternatives: viene usato /usr/bin/g++ per fornire /usr/bin/c++ (c++) in modalità automatica
Configurazione di build-essential (12.8ubuntu1.1)...
Elaborazione dei trigger per man-db (2.9.1-1)...
Elaborazione dei trigger per libc-bin (2.31-0ubuntu9.3)...
/sbin/ldconfig.real: /lib/libbit4ipki.so.conf is not an ELF file - it has the wrong magic bytes at the start.

/sbin/ldconfig.real: Cannot mmap file /lib/libbit4ipki.so.rc.

/sbin/ldconfig.real: Cannot mmap file /lib/libbit4xpki.so.rc.

/sbin/ldconfig.real: /lib/libbit4xpki.so.conf is not an ELF file - it has the wrong magic bytes at the start.

/sbin/ldconfig.real: Cannot mmap file /lib/libbit4opki.so.rc.

/sbin/ldconfig.real: /lib/libbit4npki.so.conf is not an ELF file - it has the wrong magic bytes at the start.

/sbin/ldconfig.real: /lib/libbit4opki.so.conf is not an ELF file - it has the wrong magic bytes at the start.

/sbin/ldconfig.real: Cannot mmap file /lib/libbit4npki.so.rc.

Of my will I then I gave the command:

$ LANG=C sudo apt install libc6=2.31-0ubuntu9.2 build-essential
[sudo] password:
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.8ubuntu1.1).
libc6 is already the newest version (2.31-0ubuntu9.2).
libc6 set to manually installed.
The following packages were automatically installed and are no longer required:
  libfprint-2-tod1 libllvm10 libllvm11
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.

That's all, thank you.

Revision history for this message
Manfred Hampl (m-hampl) said :
#9

build-essential is installed as desired, but I see some additional problems:

1. There seems to be another package in the wrong version (libc-bin 2.31-0ubuntu9.3)

Which output do you receive for the command

dpkg -l | grep 2.31-0ubuntu9.2

2. There seem to be some configuration files in a directory where they should not be ("Cannot mmap file /lib/libbit4ipki.so.rc etc".)
This seems to be an error in the bit4id software, see also https://forums.opensuse.org/showthread.php/534482-problem-libbit4xpki-so-conf-is-not-an-ELF-file-it-has-the-wrong-magic-bytes-at-the-start and https://bugs.launchpad.net/ubuntu/+source/bind9/+bug/1911402/comments/2

Revision history for this message
Cody Madison (codymad) said :
#10

$ dpkg -l | grep 2.31-0ubuntu9.2
ii libc-dev-bin 2.31-0ubuntu9.2 amd64 GNU C Library: Development binaries
ii libc6:amd64 2.31-0ubuntu9.2 amd64 GNU C Library: Shared libraries
ii libc6-dev:amd64 2.31-0ubuntu9.2 amd64 GNU C Library: Development Libraries and Header Files

Revision history for this message
Manfred Hampl (m-hampl) said :
#11

Sorry, my fault, I mistyped the command.

The output needed for verification is

dpkg -l | grep 2.31-0ubuntu9.3

Revision history for this message
Cody Madison (codymad) said :
#12

$ dpkg -l | grep 2.31-0ubuntu9.3
ii libc-bin 2.31-0ubuntu9.3 amd64 GNU C Library: Binaries
ii locales 2.31-0ubuntu9.3 all GNU C Library: National Language (locale) data [support]

I tried to compile some code in the C language with gcc and it works.

Thank you for this.

Revision history for this message
Best Manfred Hampl (m-hampl) said :
#13

If everything works now, then I would leave it as it is.

Only if you get some new problems, then you should downgrade also those two packages with the command
sudo apt install libc-bin=2.31-0ubuntu9.2 locales=2.31-0ubuntu9.2

Revision history for this message
Cody Madison (codymad) said :
#14

Thanks for all your help and for the speed with which you solved the problem.

Happy Sunday.

Revision history for this message
Cody Madison (codymad) said :
#15

Thanks Manfred Hampl, that solved my question.