View previous topic :: View next topic |
Author |
Message |
yardbird l33t
Joined: 20 Apr 2002 Posts: 689 Location: nl.leiden
|
Posted: Wed Sep 06, 2006 4:33 pm Post subject: Re: GCC-4.1 e glibc-2.4 |
|
|
k.gothmog wrote: | la sostituzione di LinuxThreads con NPTL potrebbe rappresentare questo famigerato cambiamento strutturale, ma di fatto non è così perché (correggetemi se sbaglio) NPTL è già stato introdotto nei profili di sistema da tempo, quindi siamo stati, nell'ultimo periodo, in una fase di transizione nel quale quelle applicazioni che potevano essere influenzate dalla cosa erano compilate con entrambi i supporti (ma ripeto: correggetemi se sbaglio). |
Da come l'ho capita io NPTL e LinuxThreads sono due implementazioni dello stesso standard (cioè i thread POSIX). Dunque in un mondo perfetto il passaggio dall'uno all'altro dovrebbe essere assolutamente trasparente (visto che le funzioni di gestione dei thread devono avere determinate caratteristiche per aderire allo standard - argomenti, valori di ritorno, etc.). I problemi nascono quando un'implementazione dello standard non è accurata al 100% e un'applicazione dipende da un qualche bug dell'implementazione per funzionare. O anche quando un'applicazione fa delle assunzioni errate sul comportamento dei thread: un'implementazione può funzionare senza lamentarsi, un'altra può incazzarsi. Un po' come i bachi di Windows che vengono mantenuti di versione in versione per non compromettere le applicazioni legacy
Almeno questo è quello che ho capito della faccenda. _________________
Albert Einstein wrote: | I consider it [...] urgently necessary for [...] workers to get together, both to protect their own economic status and [...] to secure their influence in the political field. |
http://www.bluescarni.info |
|
Back to top |
|
|
Dece Apprentice
Joined: 23 Nov 2004 Posts: 291 Location: Bologna/Rimini Italy
|
Posted: Wed Sep 06, 2006 4:48 pm Post subject: Re: GCC-4.1 e glibc-2.4 |
|
|
yardbird wrote: | I problemi nascono quando un'implementazione dello standard non è accurata al 100% |
Infatti LinuxThreads non erano perfettamente POSIX standard, mentre NPTL si (o almeno credo): le prime differenze che mi vengono in mente, sono che i LinuxThread riservavano alcuni segnali per la gestione dei thread, veniva creato un thread in più per la gestione, ogni thread aveva un pid distinto: ora non so quanto questo sia "fuori standard", sono solo le prime differenze che ho notato |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Wed Sep 06, 2006 4:57 pm Post subject: |
|
|
@makoomba:
posso capire le tue perplessità, e devo anche darti torto circa la questione di contestare le guide in un post stichy.
d'altronde io ho cercato di portare le mie motivazioni, e di documentarle anche. dall'altra parte non c'è stata nessuna obiezione che mi dimostrasse chiaramente che sbaglio (non ho mai nemmeno preteso di possedere la verità assoluta).
quello che secondo me fa crescere una persona è la capacità di ragionare, ed io un po' di carne al fuoco per farlo l'ho messa.
capisco le tue perplessità, ma mi sono limitato a dare un consiglio. ognuno è libero di seguirlo o meno.
se poi c'è qualcuno in grado di contestare (in modo fondato) questa mi apolitica se ne può tranquillamente discutere. magari anche con i dev |
|
Back to top |
|
|
makoomba Bodhisattva
Joined: 03 Jun 2004 Posts: 1856
|
Posted: Wed Sep 06, 2006 5:29 pm Post subject: |
|
|
@k.gothmog
ognuno ha il diritto di avere una sua opinione e quello di renderne gli altri partecipi.
ciò detto, il mio punto di vista è che non basta un tot di utenti senza problemi a sostenere la tesi "ricompilare il sistema non è necessario".
nei tuoi interventi citi il fatto che "le ABI non sono cambiate" mentre in gcc bugs c'è scritto che praticamente ogni cambio di major version è stato accompagnato da una modifica alle ABI C++.
I devs gentoo dicono la stessa cosa e in entrambi i casi si giunge alla medesima soluzione:
per evitare problemi, ricompilate tutto con la nuova versione.
ora, il semplice fatto che ci sia la possibilità di incorrere in problemi (e c'è, soprattutto per quanto riguarda le applicazioni kde che usano intensivamente c++) non vuol dire che *sicuramente* il sistema non ricompilato andrà in modalità autodistruzione entro 30s dall'aggiornamento di gcc.
ma poichè sono i devs e non tu o luca89 o chiunque altro contesti la guida generale a dover far fronte alla moltitudine di bugs che potrebbe generarsi se tutti gli utenti dovessero ricorrere alla soluzione meno scassaballe, mi pare che sia saggio, in un 3d in sticky, invitare gli utenti a fidarsi di chi si occupa attivamente di sviluppare gentoo.
poi ognuno è libero di fare quello che vuole con il proprio sistema. _________________ When all else fails, read the instructions. |
|
Back to top |
|
|
ReDirEct__ Guru
Joined: 16 Mar 2006 Posts: 300 Location: Nola (NA) - Italy
|
Posted: Wed Sep 06, 2006 5:48 pm Post subject: Info su aggiornameto gcc 4.1.1 |
|
|
Allora.. dopo aver aggiornato alla nuova versione di gcc, durante la compilazione di tutto il sistema, ho avuto problemi con alcuni pacchetti (almeno una 10ina)... ora: come faccio a sapere quali sono i pacchetti che mi hanno dato problemi di compilazione??? Non li ricordo tutti (in effetti mi ricordo solo cdemu)... cmq in ogni caso avrei bisogno di una info... ho letto che si dovrebbe switchare al nuvo profilo 2006.1, e l'ho fatto (con eselect) dopo aver ricompilato l'intero sistema... va bene lo stesso o devo mettermi a ri-emergere tutto da capo???
Altra domanda riguardo i profili... come faccio a cancellare quelli vecchi e a tenere solo il 2006.1?? |
|
Back to top |
|
|
lavish Bodhisattva
Joined: 13 Sep 2004 Posts: 4296
|
|
Back to top |
|
|
tizio Guru
Joined: 22 Mar 2005 Posts: 365
|
Posted: Wed Sep 06, 2006 5:57 pm Post subject: |
|
|
io ho aggiornato gcc e son passato dal profilo no-nptl a quello 2006.1 e di conseguenza ho aggiornato anche glibc e linux-headers...
a questo punto mi è sembrato saggio lanciare un emerge -e world... ma non son sicuro sia obbligatorio... sicuramente è consigliabile...
per fare l'aggiornamento del sistema ho usato questo in modo da poter tener da parte i pacchetti che mi davan problemi.
alla fine mi è rimasto solo cdemu e libstdc++ che non riesco a compilare...
per quel che riguarda i profili potevi switchare semplicemente cambiando il link simbolico di /etc/make.profile...
se vuoi eliminare gli altri stanno in /usr/portage/profiles/ ma non vedo perchè dovresti... non occupano nulla e non dan problemi...
ps: forse era meglio se usavi il thread sticky appena sopra
pps: come non detto, han fatto il merge mentre scrivevo _________________ ci son 10 tipi di persone al mondo..
chi capisce il binario e chi no |
|
Back to top |
|
|
Cazzantonio Bodhisattva
Joined: 20 Mar 2004 Posts: 4514 Location: Somewere around the world
|
Posted: Fri Sep 08, 2006 3:47 pm Post subject: |
|
|
nick_spacca wrote: | Ale, penso proprio che il tuo problema è che ti sei scordato di ricompilare il kernel (o di far partire quello nuovo )....io ho fatto il passaggio 2 giorni fa, ricompilando gli ipw2200 e tutto viaggia senza problemi!!!! |
La seconda che hai detto
Si lo so che sono un cazzone.... _________________ Any mans death diminishes me, because I am involved in Mankinde; and therefore never send to know for whom the bell tolls; It tolls for thee.
-John Donne |
|
Back to top |
|
|
eolus n00b
Joined: 24 Oct 2004 Posts: 63
|
Posted: Sat Sep 09, 2006 7:36 pm Post subject: |
|
|
ciao
mi intrometto per chiedere una delucidazione in merito a gcc 4.1.1: ho fatto emerge -u world e mi son trovato installato il sudetto compilatore. Adesso mi chiedo se questo è già attivo e funzionante o c'è ancora la vecchia versione in funzione?
Grazie |
|
Back to top |
|
|
mrfree Veteran
Joined: 15 Mar 2003 Posts: 1303 Location: Europe.Italy.Sulmona
|
Posted: Sat Sep 09, 2006 8:44 pm Post subject: |
|
|
eolus wrote: | ciao
mi intrometto per chiedere una delucidazione in merito a gcc 4.1.1: ho fatto emerge -u world e mi son trovato installato il sudetto compilatore. Adesso mi chiedo se questo è già attivo e funzionante o c'è ancora la vecchia versione in funzione?
Grazie |
Leggi la guida ufficiale per l'upgrade del gcc sul sito gentoo
http://www.gentoo.org/doc/en/index.xml?catid=upgrade _________________ Please EU, pimp my country!
ICE: /etc/init.d/iptables panic |
|
Back to top |
|
|
mambro l33t
Joined: 22 Mar 2004 Posts: 752 Location: Mira (VE) - Italy
|
Posted: Mon Sep 11, 2006 2:53 pm Post subject: |
|
|
Forse emerge -e world serve a qualcosa..
Ricompilando kcontrol mi ha dato questo errore
Quote: |
checking if UIC has KDE plugins available... no
configure: error:
you need to install kdelibs first.
If you did install kdelibs, then the Qt version that is picked up by
this configure is not the same version you used to compile kdelibs.
The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the
_same Qt version_, compiled with the _same compiler_ and the same Qt
configuration settings.
|
Ora provo a ricompilare col nuovo gcc qt e kdelibs.. _________________ "The design of a worldwide, fully transparent distributed file system for simultaneous use by millions of mobile and frequently disconnected users is left as an excercise for the reader".
Andrew S. Tanenbaum, Distributed Operating Systems.
Last edited by mambro on Mon Sep 11, 2006 3:26 pm; edited 1 time in total |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Mon Sep 11, 2006 3:01 pm Post subject: |
|
|
non vedo il nesso con emerge -w world.
ti dice semplicemente che hai installato una versione di qt diversa da quella che si aspetterebbe |
|
Back to top |
|
|
mambro l33t
Joined: 22 Mar 2004 Posts: 752 Location: Mira (VE) - Italy
|
Posted: Mon Sep 11, 2006 3:24 pm Post subject: |
|
|
Bè.. finita la compilazione lo scopriremo ma non penso sia questione di versioni differenti perchè, quando si è bloccata la compilazione di kcontrol, ho provato a ricompilare kdelibs e poi kcontrol e continuava a non funzionare. Presumo quindi che kdelibs abbia problemi a caricare le qt proprio perchè sono compilate col vecchio gcc.
La mia comunque è solo una supposizione.. vedremo fra qualche ora _________________ "The design of a worldwide, fully transparent distributed file system for simultaneous use by millions of mobile and frequently disconnected users is left as an excercise for the reader".
Andrew S. Tanenbaum, Distributed Operating Systems. |
|
Back to top |
|
|
lopio Veteran
Joined: 22 Dec 2003 Posts: 1161 Location: savona, Italy
|
Posted: Sun Sep 17, 2006 9:53 am Post subject: |
|
|
ciao
ho portato avanti il passaggio dalla versione gcc 3.4.6 alla versione 4.1 su pc amd64 e sul portatile x86 seguendo la guida.
Alcune applicazioni non partono proprio...ne prendo 2 ad esempio kino e fluxbox
Entrambe non partono per lo stesso problema
Code: |
# kino
kino: /usr/lib/libstdc++.so.6: version `CXXABI_1.3.1' not found (required by kino)
|
La differenza tra le 2 installazioni e' che su amd64 viene usato il link
Code: |
/usr/lib/libstdc++.so.6 -> /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6.0.3
|
mentre su x86 viene fatto riferimento direttamente alla libreria sotto 3.4.6 senza utilizzo di link
Mi chiedevo a questo punto quanto fosse corretto, dopo una ricompilazione totale, l'utilizzo di questo riferimento a libreria sotto 3.4.6 e soprattutto come mai il formato sia diventato diverso da quello atteso.
Se non ricordo male a fronte di versioni successive di gcc, senza cambiare il nome della libreria il formato era cambiato ma, passando a 4.1, al max mi sarei aspettato un errore in compilazione per uso di tale libreria sotto 4.1 non riutilizzo della medesima sotto 3.4.6
Non capisco nemmeno perche' nel caso amd64 ci sia sotto /usr/lib/ il link /usr/lib/libstdc++.so.6 -> /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6.0.3 mentre su x86 non esiste
Scusate le domande banali
grazie ciao |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Sun Sep 17, 2006 10:00 am Post subject: |
|
|
quale versione di glibc hai installato?
hai provato a controllare con ldd se tutti i riferimenti sono a posto? |
|
Back to top |
|
|
lopio Veteran
Joined: 22 Dec 2003 Posts: 1161 Location: savona, Italy
|
Posted: Sun Sep 17, 2006 10:16 am Post subject: |
|
|
k.gothmog wrote: |
quale versione di glibc hai installato?
|
la versione installata e' sys-libs/glibc-2.4-r3
Avevo guardato ldd e a me sembrava fuori posto solo
Code: |
/usr/lib/libstdc++.so.6 -> /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6.0.3
|
Code: |
#ldd /usr/bin/fluxbox
/usr/bin/fluxbox: /usr/lib/libstdc++.so.6: version `CXXABI_1.3.1' not found (required by /usr/bin/fluxbox)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00002b509b9c0000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x00002b509bacb000)
libXpm.so.4 => /usr/lib/libXpm.so.4 (0x00002b509bbe7000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00002b509bcf9000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00002b509bdfc000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00002b509bf06000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00002b509c009000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00002b509c11b000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00002b509c329000)
libdl.so.2 => /lib/libdl.so.2 (0x00002b509c42f000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00002b509c533000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00002b509c636000)
libm.so.6 => /lib/libm.so.6 (0x00002b509c827000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002b509c97c000)
libc.so.6 => /lib/libc.so.6 (0x00002b509ca89000)
/lib64/ld-linux-x86-64.so.2 (0x00002b509b8a4000)
|
Non ho fatto operazioni di revdeb_rebuild visto il recompilone
grazie infinite
ciao |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Sun Sep 17, 2006 10:20 am Post subject: |
|
|
io inizierei a guardare a chi appartiene /usr/lib/libstdc++.so.6 e ricompilare quel pacchetto (se non si tratta di glibc o gcc) e poi ricompilerei fluxbox
oppure proverei ldd proprio su /usr/lib/libstdc++.so.6 |
|
Back to top |
|
|
lopio Veteran
Joined: 22 Dec 2003 Posts: 1161 Location: savona, Italy
|
Posted: Sun Sep 17, 2006 10:38 am Post subject: |
|
|
k.gothmog wrote: | io inizierei a guardare a chi appartiene /usr/lib/libstdc++.so.6 e ricompilare quel pacchetto (se non si tratta di glibc o gcc) e poi ricompilerei fluxbox
oppure proverei ldd proprio su /usr/lib/libstdc++.so.6 |
ciao non avevo rimosso il compilatore precedente (pensavo di tenerlo) quindi dando un
Code: |
emerge -aC =sys-devel/gcc-3.4*
|
il link e' sparito e i riferimenti sono andati a posto per fluxbox.
Natualmente la fix_libtool_files.sh, che sembra implicita nella remove del gcc, l'avevo gia' fatta il che mi fa pensare che in remove venga fatto altro
grazie ciao |
|
Back to top |
|
|
piccolotux n00b
Joined: 25 Mar 2006 Posts: 13
|
Posted: Mon Sep 18, 2006 10:57 am Post subject: |
|
|
Ho letto tutto il thread e le mie perplessità rimangono in parte irrisolte. Cioè: quante probabilità ci sono che aggiornando alle glibc 2.4 il mio sistema vada a #@[][]?%! ?
Grazie |
|
Back to top |
|
|
randomaze Bodhisattva
Joined: 21 Oct 2003 Posts: 9985
|
Posted: Mon Sep 18, 2006 11:34 am Post subject: |
|
|
piccolotux wrote: | Ho letto tutto il thread e le mie perplessità rimangono in parte irrisolte. Cioè: quante probabilità ci sono che aggiornando alle glibc 2.4 il mio sistema vada a #@[][]?%! ?
Grazie |
Se fai il revdep_rebuild o la ricompilazione non molte, in caso contrario probabilmente qualche pacchetto potrebbe dare problemiprima o poi... _________________ Ciao da me! |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Mon Sep 18, 2006 2:58 pm Post subject: |
|
|
piccolotux wrote: | Ho letto tutto il thread e le mie perplessità rimangono in parte irrisolte. Cioè: quante probabilità ci sono che aggiornando alle glibc 2.4 il mio sistema vada a #@[][]?%! ? |
ma perché mai dovrebbe succdere?
se un sistema è ben configurato e/o non ci sono maialate particolari nelle configurazione non ci sono motivi per cui qualcosa dovrebbe andare storto.
basta seguire la guida all'aggiornamento |
|
Back to top |
|
|
piccolotux n00b
Joined: 25 Mar 2006 Posts: 13
|
Posted: Mon Sep 18, 2006 3:39 pm Post subject: |
|
|
Grazie per i consigli però ora mi sorge un'altra domanda:
per compilare glibc 2.4 devo cambiare CHOST a qualcosa che sia >386. Al momento sono settato su i386 etc etc.
Ho letto un howto per cambiare CHOST: http://dev.gentoo.org/~amne/temp/change-chost.xml
. Chiaro e ben fatto; si può fare senza problemi. Tuttavia una volta finito molti binari rimarranno linkati, immagino, a /usr/lib/gcc/i386-pc-linux-gnu/4.1.1/libstdc++.so.6 . Temo che a questo punto sarà inevitabile ricompilare, o mi sbaglio? |
|
Back to top |
|
|
.:chrome:. Advocate
Joined: 19 Feb 2005 Posts: 4588 Location: Brescia, Italy
|
Posted: Mon Sep 18, 2006 4:47 pm Post subject: |
|
|
piccolotux wrote: | Chiaro e ben fatto; si può fare senza problemi. Tuttavia una volta finito molti binari rimarranno linkati, immagino, a /usr/lib/gcc/i386-pc-linux-gnu/4.1.1/libstdc++.so.6 . Temo che a questo punto sarà inevitabile ricompilare, o mi sbaglio? |
andando a memoria (ma è risaputo che la mia memoria fa schifo. quindi... attenzione!) mi sembra che per cambiare CHOST sia necessario ricompilare prima libtool e poi world
con queste premesse quello che temi non si verificherà, quindi stai tranquillo |
|
Back to top |
|
|
randomaze Bodhisattva
Joined: 21 Oct 2003 Posts: 9985
|
Posted: Mon Sep 18, 2006 8:27 pm Post subject: |
|
|
piccolotux wrote: | Grazie per i consigli però ora mi sorge un'altra domanda:
per compilare glibc 2.4 devo cambiare CHOST a qualcosa che sia >386. Al momento sono settato su i386 etc etc. |
Dovrebbe esserci da qualche un post di Peach sul cambio di CHOST che lo dipinge come un bagno di sangue... ma elenca anche tutti i problemi riscontrati. Fai una ricerca e dagli un occhiata _________________ Ciao da me! |
|
Back to top |
|
|
pingoo Guru
Joined: 11 Jul 2006 Posts: 324
|
Posted: Mon Oct 23, 2006 10:37 am Post subject: |
|
|
Ciao, vi volevo chiedere consiglio su una possibile vaccata che ho fatto.
"Purtroppo" mi sono accorto solo oggi di questa discussione e quindi ho aggiornato gcc seguendo l'apposita guida, quindi con emerge -eav system e world. La possibile vaccata è:
+ ho visto che aggiornando system mi ha ricompilato chiaramente gcc e glibs
+ ho visto che con world mi voleva ricompilare un'altra volta gcc e glibs a mio avviso senza motivo
=> da idiota ho levato a manina dal file world gcc e glibc e poi ho dato emerge -eav world.
Ora, a parte l'idiozia di risparmiare qualche minuto su giorni di compilazione dite che ho fatto un casino? Nel caso alla fine, perché sta ancora compilando, li riaggiungo al world ??
Altro punto: ho in uso il kernel 2.6.15-gentoo-r1 e mi ha scaricato il 2.6.17-gentoo-r8 ma non ho voglia di riconfigurarlo da zero. Posso usare il vecchio config o non posso, come la guida di aggiornamento kernel suggerisce in generale? Non potendo ricompilerei piuttosto il vecchio kernel
Bye |
|
Back to top |
|
|
|