Puncte:0

Erori și probleme la instalarea G++ pe Ubuntu

drapel in

Încerc să instalez g++ când întâlnesc această eroare:

$ sudo apt-get install g++
[sudo] parola pentru eisha: 
Citirea listelor de pachete... Gata
Construirea arborelui de dependență       
Citirea informațiilor despre stare... Gata
Unele pachete nu au putut fi instalate. Acest lucru poate însemna că ai
a solicitat o situație imposibilă sau dacă utilizați instabil
distribuție că unele pachete necesare nu au fost încă create
sau a fost mutat din Incoming.
Următoarele informații pot ajuta la rezolvarea situației:

Următoarele pachete au dependențe neîndeplinite:
 g++ : Depinde: g++-9 (>= 9.3.0-3~) dar nu va fi instalat
E: Nu puteți corecta problemele, ați reținut pachete sparte.

Aici este rezultatul comenzii Politica $ apt g++:

Politica $ apt g++
g++:
  Instalat: (niciunul)
  Candidat: 4:9.3.0-1ubuntu2
  Tabel de versiuni:
     4:9.3.0-1ubuntu2 500
        500 http://us.archive.ubuntu.com/ubuntu focal/main pachete amd64

Aici este rezultatul comenzii Politica $ apt g++-9:

Politica $ apt g++-9
g++-9:
  Instalat: (niciunul)
  Candidat: 9.3.0-17ubuntu1~20.04
  Tabel de versiuni:
     9.3.0-17ubuntu1~20.04 500
        500 http://security.ubuntu.com/ubuntu focal-security/main pachete amd64
     9.3.0-10ubuntu2 500
        500 http://us.archive.ubuntu.com/ubuntu focal/main pachete amd64

da am incercat: sudo apt install build-essential iar ieșirea este așa:

sudo apt install build-essential
[sudo] parola pentru eisha: 
Citirea listelor de pachete... Gata
Construirea arborelui de dependență       
Citirea informațiilor despre stare... Gata
Unele pachete nu au putut fi instalate. Acest lucru poate însemna că ai
a solicitat o situație imposibilă sau dacă utilizați instabil
distribuție că unele pachete necesare nu au fost încă create
sau a fost mutat din Incoming.
Următoarele informații pot ajuta la rezolvarea situației:

Următoarele pachete au dependențe neîndeplinite:
 build-essential: Depinde: libc6-dev dar nu va fi instalat sau
                            libc-dev
                   Depinde: g++ (>= 4:9.2) dar nu va fi instalat
E: Nu puteți corecta problemele, ați reținut pachete sparte.

Si da am incercat si eu actualizare sudo apt Am primit o ieșire foarte lungă, iar liniile de final au fost:

Ultima modificare raportată: miercuri, 26 ianuarie 2022 19:25:00 +0000
   Fișier de lansare creat la: miercuri, 26 ianuarie 2022 16:17:36 +0000
W: Nu s-a putut prelua http://us.archive.ubuntu.com/ubuntu/dists/focal-updates/restricted/i18n/Translation-en.xz  
E: Nu s-a putut prelua http://us.archive.ubuntu.com/ubuntu/dists/focal-updates/universe/binary-amd64/Packages.xz  
W: Unele fișiere index nu au putut fi descărcate. Ele au fost ignorate, sau cele vechi au fost folosite în schimb
drapel ru
Comentariile nu sunt pentru discuții extinse; această conversație a fost [mutată în chat](https://chat.stackexchange.com/rooms/133548/discussion-on-question-by-eisha-latif-i-was-installing-g-in-ubuntu-but- unfor).
Puncte:2
drapel my

TL;DR: Downgrade libc6 la libc6=2.31-0ubuntu9.2 și instalați construcție-esențială.

Nu aveți arhivele necesare activate. Mai mult, există versiuni sparte ale pachetelor.

Prin alergare politica apt-cache g++ pe Ubuntu 20.04, primesc:

g++:
  Instalat: (niciunul)
  Candidat: 4:9.3.0-1ubuntu2
  Tabel de versiuni:
     4:9.3.0-1ubuntu2 500
        500 http://mirrors.my mirror.com/ubuntu focal/main pachete amd64

Deci, trebuie să activați principal repertoriu.
Alerga:

sudo add-apt-repository main && sudo apt update

După activarea principal repertoriu. Instalați versiunea corectă a libc6:

sudo apt install --reinstall libc6=2.31-0ubuntu9.2

NU fugi upgrade apt.

Acum, actualizați și curățați:

actualizare sudo apt
sudo apt clean
sudo apt autoremove
sudo apt -f install

Acum, instalați meta-pachetul, construcție-esențială a instala g++:

sudo apt install aptitude
sudo aptitude -f install build-essential

Dacă cele de mai sus nu au funcționat, atunci încercați să restaurați depozitele implicite și să utilizați aptitudini pentru a instala build-essential:

sudo mkdir ~/answer && cd ~/answer/ && sudo wget https://gist.githubusercontent.com/ishad0w/788555191c7037e249a439542c53e170/raw/3822ba49241e6fd851e6fd851e6fd851/ sudo mkdir -s)/" ~/answer/sources.list && sudo mv ~/answer/sources.list /etc/apt/ && sudo apt update && sudo apt upgrade && sudo rm -rf ~/answer
sudo aptitude -f install build-essential

Tot nu a funcționat?

Editează-ți întrebarea pentru a include:

  • sudo apt install libc6-dev
  • actualizare sudo apt
  • politica apt-cache libc6
  • politica apt-cache libc-dev

Trimite-mi un ping după ce ai adăugat aceste detalii ;)

Artur Meinild avatar
drapel vn
Oh, este din cauza versiunii incorecte `libc6`?
Someone avatar
drapel my
@ArturMeinild Da.
drapel us
Poate că restaurarea depozitelor implicite (avem deja câteva întrebări pentru asta) și apoi actualizarea completă a sistemului ar rezolva problema?
Someone avatar
drapel my
@ArchismanPanigrahi Nu sunt sigur de asta (am menționat-o deja în răspunsul meu). Dar principala problemă este versiunea incorectă a libc.
Puncte:0
drapel cn

Conform acestei documentații, încercați următoarele:

Mai întâi, actualizați indexul pachetului, actualizare sudo apt.

Modul recomandat de a instala compilatorul C++ pe Ubuntu 20.04 este prin instalarea întregului pachet de dezvoltare construcție-esențială.

Pentru a instala, rulați următoarele:

$ sudo apt install build-essential

Apoi, pentru a verifica dacă a fost instalat cu succes, rulați:

$ g++ --versiune

Ar trebui să obțineți o ieșire similară cu mai jos:

$ g++ --versiune
gcc (Ubuntu 9.2.1-17ubuntu1) 9.2.1 20191102
Someone avatar
drapel my
Răspuns complet greșit. Dacă OP nu poate instala `g++`, atunci cum vor instala `build-essential`? Este evident că `build-essential` depinde de `g++` și instalarea `g++` aduce erori!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.