Puncte:4

De ce unele versiuni mai vechi de pachete nu sunt găsite

drapel gr

Încerc să configurez un motor de compilare (Bazel) pentru a utiliza gcc-7. Pentru asta aveam nevoie de link-uri către toate pachetele .deb necesare.

Una dintre dependențele lui gcc-7 este libatomic1 (>= 7.5.0-6ubuntu2). Îmi dau seama că acest lucru este „mai mare decât sau egal”, dar dacă aș vrea să folosesc bibliotecile originale distribuite cu gcc-7, de unde le-aș putea obține?

De exemplu, dacă o fac apt download --print-uris libatomic1=7.5.0-6ubuntu2 de ce îmi spune:

E: Versiunea „7.5.0-6ubuntu2” pentru „libatomic1” nu a fost găsită

dar când o fac apt show libgcc-7-dev Vad asta libatomic1>=7.5.0-6ubuntu2 este listată ca dependență. Unde aș putea găsi acest libatomic1=7.5.0-6ubuntu2?

Mă gândeam că s-ar putea să găsesc pachetul bibliotecii în http://old-releases.ubuntu.com/ubuntu/pool/main/g/gcc-7/ dar nu este acolo.

N0rbert avatar
drapel zw
Instalarea versiunilor exacte de pachet este o idee proastă. Nu ar trebui să considerați că APT este Ruby/Rake/rvm sau Npm sau pip.
Puncte:5
drapel bo

Dacă verifici Aici, veți vedea că actualizările de securitate au înlocuit versiunile mai vechi. Versiunile mai vechi nu mai sunt disponibile din motive de securitate.

Am efectuat căutarea la packages.ubuntu.com folosind „focal” ca distribuție.

introduceți descrierea imaginii aici

Un alt motiv pentru care versiunea veche nu este disponibilă este că versiunea standard a libatomic1 nu mai este construită din gcc-7. După cum puteți vedea Aici, versiunea actuală disponibilă pentru Ubuntu Focal este construită din gcc-10 (în partea dreaptă, sub „Resurse Ubuntu”).

Dacă doriți, puteți descărca sursa pentru gcc-7 și puteți construi libatomic1 de acolo. Probabil că nu este ceva ce ai vrea să faci, dar este posibil.

Puteți activa sursele în dvs /etc/apt/sources.list fișier și apoi rulați:

sudo apt source gcc-7

sau puteți descărca sursa de pe packages.ubuntu.com iar în partea dreaptă, veți vedea trei opțiuni pentru a descărca sursa.

introduceți descrierea imaginii aici

De asemenea, trebuie remarcat faptul că, dacă intenționați să construiți ceva, va trebui să descărcați dependențele de construcție necesare:

sudo apt build-dep gcc-7
mchid avatar
drapel bo
Desigur, construirea din sursă nu va satisface dependența dpkg, dar veți putea lucra cu lib-ul pe care l-ați compilat din sursă, referindu-l în mod explicit atunci când rulați gcc-7.
Puncte:1
drapel cm

Depozitele Apt conțin în mod normal doar o versiune a unui pachet pentru o anumită versiune. Dacă doriți pachete Ubuntu mai vechi, atunci trebuie să vă uitați prin „istoricul publicării” pentru pachetul sursă de pe launchpad. Puteți urma apoi un link către o anumită versiune, apoi un link către versiuni și apoi, în final, către pachetele individuale.

Cu toate acestea, nu cred că un pachet libatomic1 la versiunea 7.5.0-6ubuntu2 a existat vreodată. Când un pachet sursă pentru o nouă versiune majoră a gcc este adăugat la o versiune Debian sau Ubuntu, acesta preia pachetele de bibliotecă pentru bibliotecile de suport pentru runtime gcc (libgcc, libatomic, libasan etc).

Pachetul sursă pentru versiunea majoră anterioară este apoi modificat la următoarea încărcare, astfel încât să nu mai construiască pachetele care au fost preluate de noua versiune majoră, dacă nu a fost modificat în acest fel, atunci sunt destul de sigur că încărcarea ar fi respins de software-ul de arhivă (știu că ar fi în Debian, nu sunt atât de familiarizat cu configurarea arhivei Ubuntu)

Puteți descărca cel mai recent pachet sursă gcc-7 și îl modificați pentru a reactiva construirea de biblioteci, dar acest lucru este probabil să cauzeze mai multe probleme decât rezolvă.

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.