# [info] gcc 4.1.1 è stabile

## gamberetto

Ciao a tutti,

come da oggetto, gcc è stabile su architetture x86, amd64, hppa e ppc.

Io provo ad aggiornare...   :Cool: 

Edit: già che ci sono posto il link della guida sull'aggiornamento di gcc.

La versione in inglese è aggiornata per il passaggio 3.4  :Arrow:   4.1.

EDIT: la guida in italiano adesso è aggiornata

----------

## Deus Ex

Sono migrato da 3.4.4-r1 a 4.1.1 un paio di settimane fa. Tutto ok  :Wink: 

----------

## lavish

Spostato da Forum di discussione italiano a Forum italiano (Italian) e messo sticky  :Wink: 

----------

## gutter

 *lavish wrote:*   

> Spostato da Forum di discussione italiano a Forum italiano (Italian) e messo sticky 

 

Proprio per questo siete tutti invitati a postare qui per problemi dubbi e/o perplessita' esistenziali sul nuovo gcc.

----------

## darkmanPPT

giusto per sapere, visto che sto installandolo.

ma devo fare tutti i casini di configurazione come se cambiassi le flag??

aaaaaaaaaaaaaaaaaaaaaaaaaaaa   :Question:   :Rolling Eyes:   :Rolling Eyes:   spero di no. l'ultima volta son diventato matto.

cioè questo:

http://www.gentoo.org/doc/it/gcc-upgrading.xml

----------

## devilheart

io lo uso senza problemi già dal 26 maggio

----------

## lavish

io sto ricompilando... *tutto*   :Confused: 

Fortuna che il sistema è snello ... (auguri a chi ha KDE + OO + firefox  :Mr. Green:  )

----------

## GiRa

 *darkmanPPT wrote:*   

> giusto per sapere, visto che sto installandolo.
> 
> ma devo fare tutti i casini di configurazione come se cambiassi le flag??
> 
> aaaaaaaaaaaaaaaaaaaaaaaaaaaa      spero di no. l'ultima volta son diventato matto.
> ...

 

Credo vada seguito solo il passaggio  *Quote:*   

> 2. Istruzioni per un aggiornamento generale

  se parti già da un 3.4*.

In ogni caso prima di aggiornare vorrei una conferma da qualcuno di più esperto di me, la cosa mi spaventa un po'  :Smile: 

----------

## darkmanPPT

nn so se è normale. ma le glibc allegate mi hanno chiesto di essere compilate con delle nuove flag.

```
!!! please add USE='nptl nptlonly' to make.conf

!!! If you need support, post the topmost build error, and the call stack if relevant.

```

ho dovuto aggiungere queste flag per compilarli.

ps: penso di dover postare qui visto che le glibc sono allegate al gcc... cmq era solo per mettere un avviso per chi dovrà installarle.

ciao

----------

## lavish

 *darkmanPPT wrote:*   

> nn so se è normale. ma le glibc allegate mi hanno chiesto di essere compilate con delle nuove flag
> 
> [...]

 

 *GWN wrote:*   

> GCC 4.1.1 and glibc 2.4 stable
> 
> Initially reported last week, the x86 and AMD64 architectures have marked sys-devel/gcc-4.1.1 and sys-libs/glibc-2.4-r3 stable to coincide with the 2006.1 release. The new GCC and GNU C library (glibc) versions mark a transition in Gentoo's supported configurations. Starting with glibc 2.4, the LinuxThreads threading library is no longer supported in the default configuration. LinuxThreads is replaced with NPTL, or the Native POSIX Thread Library. Support for the older versions of glibc with LinuxThreads will remain for x86 in a limited fashion for an undetermined time. This is primarily due to a shift in support from the upstream glibc developers.
> 
> Users on x86 wishing to continue using LinuxThreads are asked to switch to using the "no-nptl" profile for default-linux, or to switch to using a hardened profile. 
> ...

 

http://www.gentoo.org/news/en/gwn/20060828-newsletter.xml

----------

## ercoppa

Scusat non ho capito questo fatte delle glibc. Bisogna aggiungere quelle due use (nptl nptlonly)?

Sono diperato a ricompilare tutto il sistem ci metterò 3 giorni, forse aspetto bo   :Confused: 

----------

## dark_knight

Due annotazioni:

1) per chi aggiorna dalla 3.4 alla 4.1 (pacchetti stabili), la versione italiana dell'HOWTO NON E' AGGIORNATA

 *Quote:*   

> Aggiornato il 26 maggio 2006

 

contro

 *Quote:*   

> Updated August 30, 2006

 

quindi fate riferimento a quella inglese (http://www.gentoo.org/doc/en/gcc-upgrading.xml), seguendo soltanto i passi della sezione "2. General Upgrade Instructions". In altre parole:

```
# emerge -uav gcc

(Please substitute "i686-pc-linux-gnu-4.1.1" with the GCC

version and CHOST settings you've upgraded to:)

# gcc-config i686-pc-linux-gnu-4.1.1

# source /etc/profile

If you upgraded from gcc 3 to 4 (e.g. from 3.4.6 to 4.1.1 in this

example) you will have to run fix_libtool_files.sh manually

# fix_libtool_files.sh 3.4.6

(Rebuilding libtool)

# emerge --oneshot -av libtool

# emerge -eav system

# emerge -eav world
```

più, opzionalmente...

```
emerge -aC =sys-devel/gcc-3.4*
```

Se si decide di passare alla versione 4.1 di gcc, ricompilare tutto il sistema è necessario è NON va usato revdep-rebuild (fonte: https://forums.gentoo.org/viewtopic-p-3541436.html#3541436),

2) è necessario aggiungere nptl e nptlonly alle flag use, altrimenti fallirebbe la recompilazione di glibc (fonte: https://forums.gentoo.org/viewtopic-p-3544180.html#3544180)

Confermo: provato sulla mia pelle  :Smile: 

```
>>> Emerging (4 of 5) sys-libs/glibc-2.4-r3 to /

>>> checking ebuild checksums ;-)

>>> checking auxfile checksums ;-)

>>> checking miscfile checksums ;-)

>>> checking glibc-2.4.tar.bz2 ;-)

>>> checking glibc-ports-2.4.tar.bz2 ;-)

>>> checking glibc-libidn-2.4.tar.bz2 ;-)

>>> checking glibc-2.4-patches-1.17.tar.bz2 ;-)

>>> checking glibc-linuxthreads-20060605.tar.bz2 ;-)

>>> checking glibc-powerpc-cpu-addon-v0.01.tgz ;-)

 * glibc-2.4 is nptl-only!

!!! ERROR: sys-libs/glibc-2.4-r3 failed.

Call stack:

  ebuild.sh, line 1555:   Called dyn_setup

  ebuild.sh, line 668:   Called pkg_setup

  glibc-2.4-r3.ebuild, line 1079:   Called die

!!! please add USE='nptl nptlonly' to make.conf

!!! If you need support, post the topmost build error, and the call stack if relevant.
```

Prima avevo solo nptl e non nptlonly, ed emerge si è bloccato. Aggiungendo nptlonly, tutto compila a meraviglia  :Wink: 

----------

## Dece

 *ercoppa wrote:*   

> Scusat non ho capito questo fatte delle glibc. Bisogna aggiungere quelle due use (nptl nptlonly)?
> 
> Sono diperato a ricompilare tutto il sistem ci metterò 3 giorni, forse aspetto bo  

 

in teoria basta cambiare profilo e passare al 2006.1 e le trovi gia attive

----------

## bandreabis

Ricompilare TUTTO  :Question:   :Question:   :Question: 

 :Crying or Very sad:   :Crying or Very sad:   :Crying or Very sad: 

----------

## dark_knight

 *bandreabis wrote:*   

> Ricompilare TUTTO   

 

 *man emerge wrote:*   

>       --emptytree (-e)
> 
> Reinstalls all world packages and their dependencies to the current  USE  specifications while differing from the installed set of packages as little as possible.  You should run  with  --pretend first to make sure the result is what you expect.

 

E cambiando compilatore credo 'qualcosina' cambi  :Razz: 

----------

## tizio

scusate ma non capisco...

io avevo già seguito la guida gcc-upgrading per passare dalla 3.3 alla 3.4...

ora ho aggiornato alla 4.1 e forzato l'utilizzo con gcc-config... non ho aggiunto nessuna flag e ricompilato nulla, eppure tutto sembra funzionare...

ho anche emerso per prova vim e sembra vada tutto ok...

dovrei comunque lanciare "emerge -e world" ???? (ditemi di no vi prego)

revdep-rebuild non trova incosistenze e anche se aggiungo le due flag al make.conf non mi richiede di riemergere nulla (con un --newuse world)

non son già a posto così?

(e se son già a posto... posso togliere il gcc 3.4.6 ?)

grazie a tutti

----------

## Peach

allora: finito l'aggiornamento di gcc:

```
 * The current gcc config appears valid, so it will not be

 * automatically switched for you.  If you would like to

 * switch to the newly installed gcc version, do the

 * following:

 * gcc-config i686-pc-linux-gnu-4.1.1

 * source /etc/profile

 * Switching native-compiler to i686-pc-linux-gnu-3.4.6 ...

>>> Regenerating /etc/ld.so.cache...                                                         [ ok ]
```

ma...

```
# gcc-config -l

 [1] i686-pc-linux-gnu-3.4.6 *

 [2] i686-pc-linux-gnu-3.4.6-hardened

 [3] i686-pc-linux-gnu-3.4.6-hardenednopie

 [4] i686-pc-linux-gnu-3.4.6-hardenednopiessp

 [5] i686-pc-linux-gnu-3.4.6-hardenednossp

 [6] i686-pc-linux-gnu-4.1.1
```

e

```
# gcc -v

Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/specs

Configured with: /var/tmp/portage/gcc-3.4.6-r1/work/gcc-3.4.6/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.4.6 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include/g++-v3 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --disable-libgcj --enable-languages=c,c++,f77 --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu

Thread model: posix

gcc version 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0, pie-8.7.9)
```

sbaglio o non ha switchato realmente?

bug  :Question: 

----------

## gutter

 *ercoppa wrote:*   

> Scusat non ho capito questo fatte delle glibc. Bisogna aggiungere quelle due use (nptl nptlonly)?
> 
> 

 

In pratica i Linux Thread sono deprecati.

@Peach:

```
 * The current gcc config appears valid, so it will not be

 * automatically switched for you.  If you would like to

 * switch to the newly installed gcc version, do the

 * following:

 * gcc-config i686-pc-linux-gnu-4.1.1

 * source /etc/profile 
```

sottolineo:

 *Quote:*   

> 
> 
> so it will not be
> 
>  * automatically switched for you.

 

----------

## dark_knight

...per questo serve digitare manualmente:

```
# gcc-config i686-pc-linux-gnu-4.1.1

# source /etc/profile 
```

 :Wink: 

----------

## Gremo

lo uso da mesi!

consiglierei:

```

# emerge -e system && emerge -e world

# emerge -P gcc

```

ciao!

----------

## Peach

 *gutter wrote:*   

> sottolineo:
> 
>  *Quote:*   
> 
> so it will not be
> ...

 

OH MERD!

avevo tralasciato il NOT nella lettura, chiedo perdono!!!!

madoooo

----------

## dark_knight

 *tizio wrote:*   

> dovrei comunque lanciare "emerge -e world" ???? (ditemi di no vi prego)

 

Nel thread inglese viene ripetutamente affermato che è necessario (un messaggio d'esempio: https://forums.gentoo.org/viewtopic-p-3544936.html#3544936)  :Smile: 

----------

## Gremo

 *dark_knight wrote:*   

>  *tizio wrote:*   dovrei comunque lanciare "emerge -e world" ???? (ditemi di no vi prego) 
> 
> Nel thread inglese viene ripetutamente affermato che è necessario (un messaggio d'esempio: https://forums.gentoo.org/viewtopic-p-3544936.html#3544936) 

 

veramente avevo leggo (ora non ricordo dove...ma sto cercando) che era necessario emerge -e system && emerge -e world...

non ne ho idea perchè questa doppia compilazione di system..

edit

https://forums.gentoo.org/viewtopic-t-469335-highlight-.html

----------

## dark_knight

Sì, sarebbe meglio aggiornare prima system e poi world: questo perchè, al momento della ricompilazione dei pacchetti in world, è necessario che le librerie e tutti gli altri "tool" di sistema siano già a posto, compilati con il nuovo gcc. Hai ragione, questo è spiegato da qualche parte nel thread inglese (in "Portage and Programming": "GCC 4.1.1 and glibc 2.4 stable on x86 and amd64" --> https://forums.gentoo.org/viewtopic-t-493662.html)

Edit: oppure nel link che hai appena postato  :Wink: 

----------

## Gremo

 *dark_knight wrote:*   

> Sì, sarebbe meglio aggiornare prima system e poi world: questo perchè, al momento della ricompilazione dei pacchetti in world, è necessario che le librerie e tutti gli altri "tool" di sistema siano già a posto, compilati con il nuovo gcc. Hai ragione, questo è spiegato da qualche parte nel thread inglese (in "Portage and Programming": "GCC 4.1.1 and glibc 2.4 stable on x86 and amd64" --> https://forums.gentoo.org/viewtopic-t-493662.html)
> 
> Edit: oppure nel link che hai appena postato 

 

lol, allora preparatevi a una 10 di ore se va bene   :Laughing:  (io già l'ho fatto  :Razz: )

alla fine, con ccache alla seconda "passata" si guadagna davvero molto...

----------

## tizio

10 ore?? beato te...

il mio world è un 1,2 giga... penso che ci metterei almeno il doppio... e fortuna che la roba più pesante ce l'ho in -bin...

comunque mi sembra una follia.. non ho mai fatto un -e world e non credo lo farò ora.. almeno finchè vedo che funziona tutto..

qualcun altro sta usando il 4.1 senza aver riemerso il mondo?

----------

## dark_knight

Grazie  :Razz: 

Personalmente ci sono abituato, dopo aver compilato 3 (!) volte OOo in 3 giorni, per sperimentare le flag USE  :Razz:  (8 ore per la prima compilazione, poi ccache ha circa dimezzato i tempi  :Wink:  )

Sarà un modo anche per inserire le ottimizzazioni della CPU in tutti i pacchetti: recentemente ho reso più specifica l'opzione "-march" in make.conf, ma non osavo ricompilare tutto  :Razz: 

----------

## Gremo

 *tizio wrote:*   

> 10 ore?? beato te...
> 
> il mio world è un 1,2 giga... penso che ci metterei almeno il doppio... e fortuna che la roba più pesante ce l'ho in -bin...
> 
> comunque mi sembra una follia.. non ho mai fatto un -e world e non credo lo farò ora.. almeno finchè vedo che funziona tutto..
> ...

 

bhè io l'ho fatto senza X e gnome, con installazione pulita qualche giorno fa.

attualmente con circa 500 pacchetti genlop mi dice 3 ore circa per system e 10 ore circa per il world...quindi 13 neanche tanto!   :Very Happy: 

----------

## tizio

non andrebbe ricompilato anche il kernel??

----------

## Ic3M4n

beh.. certo che sì. anche perchè altrimenti dubito che i moduli esterni possano funzionare.

----------

## .:chrome:.

sono stati stabilizzati

finalmente è finita l'era di GCC-3 e di LinuxThreads

consiglio la lettura della guida all'aggiornamento

http://www.gentoo.org/doc/en/gcc-upgrading.xml

ma personalmente sconsiglio i due emerge -e {system,world} in successione. sono opzionali, non necessari

----------

## Ic3M4n

hem   :Rolling Eyes:  https://forums.gentoo.org/viewtopic-t-493754.html proprio sopra di te in sticky!

----------

## .:chrome:.

 *Ic3M4n wrote:*   

> hem   https://forums.gentoo.org/viewtopic-t-493754.html proprio sopra di te in sticky!

 

dannazione!

ho proprio gli occhi nel c**o!

e pensa che mi chiedevo anche per quale motivo non se ne fosse ancora fatta parola

forse è il caso che qualche mod cancelli questo thread

----------

## darkmanPPT

certe volte mi chiedo.

ma ha senso?

ha senso installare un nuovo compilatore per poi dover ricompilare tutto?

cioè, mi spiego.

cosa ci guadagnerò? qualche millisecondo di ottimizzazione... al parti di averci perso 24 ore per ricompialre tutto.

ne vale la pena?

----------

## .:chrome:.

 *darkmanPPT wrote:*   

> certe volte mi chiedo.
> 
> ma ha senso?
> 
> ha senso installare un nuovo compilatore per poi dover ricompilare tutto?

 

no. non ha senso

è necessario qualcosa, come un emerge -e libtool, o emerge -e system (forse), ma tutto il sistema è davvero stupido

non esiste nessun motivo concreto e fondato per farlo. sarebbe necessario solo per ilpassaggio inverso (da gcc-4 a gcc-3) ma non è per nulla vero che È NECESSARIO ricompilare tutto. se uno lo vuole fare è solo scelta sua

----------

## lavish

Fatto il merge del thread aperto da k.gothmog  :Wink: 

Dimostrazione che le discussioni "sticky" siano le meno lette eheh

----------

## dark_knight

 *k.gothmog wrote:*   

> personalmente sconsiglio i due emerge -e {system,world} in successione. sono opzionali, non necessari

 

Visto che molti utenti (ma soprattutto dev) dicono il contrario (vedere link sparsi per questo thread), secondo te perchè non sono necessari?  :Wink: 

----------

## .:chrome:.

 *dark_knight wrote:*   

> Visto che molti utenti (ma soprattutto dev) dicono il contrario (vedere link sparsi per questo thread), secondo te perchè non sono necessari? 

 

un motivo su tutti:

l'interfaccia ABI (Application Binary Interface) non cambia. un suo cambiamento è l'unico motivo che mi viene in mente per cui uno dovrebbe ricompilare tutto il sistema.

oltretutto il problema non è nemmeno il compilatore, perché quello è assolutamente ininfluente, da quel punto di vista.

quello che "determina l'interfaccia ABI" (mi si conceda questa espressione, anche se è pessima) sono le librerie di sistema, ed in particolare quelle di base.

un cambiamento STRUTTURALE nelle glibc, ad esempio, potrebbe giustificare un'azione di questo tipo. 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).

oggi la completa rimozione di LinuxThreads potrebbere rompere la compatibilità verso alcune applicazioni.

comunque sia le applicazione che possono risentire di questa situazione sarebbero davvero poche, e dovrebbero ancheessere state compilate staticamente. la stragrande maggioranza delle applicazioni per GNU/Linux è compilata e linkata dinamicamente a /lib/libc.so.6 e questa libreria ("la" libreria) non ha subito NESSUN cambiamento strutturale.

cosa richiederà davvero la ricompilazione dell'intero sistema? il passaggio da /lib/libc.so.6 a /lib/libc.so.7 o /lib/libc.so.8, ceh non ho idea quando avverrà, ma sarà con una ipotetica glibc-2.5 o 3.0.

questo richiede la ricompilazione del sistema, non di certo il cabio di compilatore.

pensaci bene: se non fosse così, sarebbe impossibile, per le distribuzioni compilate, usare i pacchetti di versioni diverse, cosa che invece è possibilissima, perché proprio qualche settimana fa ho installato un pacchetto per FC2 su FC5.

e comunque io sono passato a GCC-4.1 e glibc-2.4 su una mia macchina senza ricompilare nient'altro che libtool, e tutto funziona alla perfezione

chi sostitene che sia necessario ricompilare tutto quando cambi compilatore, parla di cose che non conosce, ed è smentito da qualunque testo che parli di sistemi operativi

----------

## Dece

dato che gcc è slotted mi sono sempre chiesto anche io il perchè di tutta questa voglia di ricompilarsi da zero un intero sistema: a meno che uno non voglia  veramente TUTTO superaggiornato, non vedo il motivo per non tenere entrambe le versioni e aggiornare tutto con calma (imho)

L'unico motivo valido che mi viene in questo caso è l'utilizzo di nptl e nptlonly...

----------

## dark_knight

 *k.gothmog wrote:*   

> l'interfaccia ABI (Application Binary Interface) non cambia. un suo cambiamento è l'unico motivo che mi viene in mente per cui uno dovrebbe ricompilare tutto il sistema.

 

Cosa che è successa tra la versione 3.3 e la 3.4 di gcc, mi sembra di aver letto... vero?

 *Quote:*   

> oggi la completa rimozione di LinuxThreads potrebbere rompere la compatibilità verso alcune applicazioni.

 

Ma questa imposizione viene "dall'alto", cioè passando alle versioni aggiornate un semplice utente (come me, ad esempio) è costretto a seguire queste linee guida (altrimenti non posso aggiornare glibc)

 *Quote:*   

> chi sostitene che sia necessario ricompilare tutto quando cambi compilatore, parla di cose che non conosce, ed è smentito da qualunque testo che parli di sistemi operativi

 

Ma allora... perchè queste informazioni sono finite addirittura sulla guida ufficiale per l'aggiornamento?

 *http://www.gentoo.org/doc/en/gcc-upgrading.xml wrote:*   

> To be completely safe that your system is in a sane state, you must rebuild the toolchain and then world to make use of the new compiler.

 

Il must è in corsivo nella versione originale, per evidenziarlo suppongo...

(faccio l'avvocato del diavolo, eh  :Wink: )

----------

## zolar czakl

 *dark_knight wrote:*   

> Ma allora... perchè queste informazioni sono finite addirittura sulla guida ufficiale per l'aggiornamento?

 

Nello "sticky" in Portage & Programming viene riportato questo link.

----------

## .:chrome:.

 *dark_knight wrote:*   

> Cosa che è successa tra la versione 3.3 e la 3.4 di gcc, mi sembra di aver letto... vero?

 

assolutamente no.

 *dark_knight wrote:*   

> Ma questa imposizione viene "dall'alto", cioè passando alle versioni aggiornate un semplice utente (come me, ad esempio) è costretto a seguire queste linee guida (altrimenti non posso aggiornare glibc)

 

non ho capito. le impostazioni "dall'alto" hanno fatto fare un passaggio graduale che non ha richiesto nessuna ricompilazione. è chi scrive le guide che dovrebbe farlo con maggiore coscienza

 *dark_knight wrote:*   

>  *Quote:*   chi sostitene che sia necessario ricompilare tutto quando cambi compilatore, parla di cose che non conosce, ed è smentito da qualunque testo che parli di sistemi operativi 
> 
> Ma allora... perchè queste informazioni sono finite addirittura sulla guida ufficiale per l'aggiornamento?
> 
>  *http://www.gentoo.org/doc/en/gcc-upgrading.xml wrote:*   To be completely safe that your system is in a sane state, you must rebuild the toolchain and then world to make use of the new compiler. 
> ...

 

ti ricordo che quella di Linux è una comunità libera e che ognuno può dare il suo contributo.

non si fanno concorsi basati sul merito o sulla conoscenza o sulla competenza o sulle mazzette, quindi chiunque vuole contribuire può farlo.

ora... chi ha scritto quella guida ha commesso secondo me un errore grossolano. potrebbe benissimo averlo fatto un buona fede perché quella persona era convinta di quello che stava scrivendo.

io ti garantisco che quelle due azioni non sono necessarie in quella forma, e ti ripeto che su una macchina io non ho fatto nemmeno l'aggiornamento di system e funzioan tutto perfettamente.

poi pensa una cosa: world comprende system. che senso ha ricompilare prima system e poi world, che lo comprende? ricompileresti system due volte. già qui c'è un controsenso

quello che serve è libtool e forse solamente system, ma non di certo world

P.S.: a me revdep-rebuild continua a funzionare regolarmente. devo pensare di essere un miracolato?

----------

## bandreabis

Interessante!

Io comunque aspetterò di montare altra memoria e compilare in RAM (è davvero più veloce che compilare normalmente?) prima di un eventuale emerge system/world. Ma se questa ricompilazione completa non è necessaria la questione cambia.

Io sono niubbissimo quindi aspetto che questa discussione vada avanti prime di decidere che fare.

Saluti a tutti.

Andrea

----------

## dark_knight

 *k.gothmog wrote:*   

>  *dark_knight wrote:*   Ma questa imposizione viene "dall'alto", cioè passando alle versioni aggiornate un semplice utente (come me, ad esempio) è costretto a seguire queste linee guida (altrimenti non posso aggiornare glibc) 
> 
> non ho capito. le impostazioni "dall'alto" hanno fatto fare un passaggio graduale che non ha richiesto nessuna ricompilazione. è chi scrive le guide che dovrebbe farlo con maggiore coscienza

 

Mi spiego: se non volessi usare nptl e nptlonly, non potrei aggiornare glibc... e quindi, se voglio avere un sistema aggiornato, devo usarli invece dei LinuxThread (questo in risposta alla tua affermazione, che mi sembrava sollevare dei dubbi sul passaggio forzato a nptl: "oggi la completa rimozione di LinuxThreads potrebbere rompere la compatibilità verso alcune applicazioni. "). Se ho interpretato male, ignora pure...

 *Quote:*   

> ti ricordo che quella di Linux è una comunità libera e che ognuno può dare il suo contributo.
> 
> non si fanno concorsi basati sul merito o sulla conoscenza o sulla competenza o sulle mazzette, quindi chiunque vuole contribuire può farlo.
> 
> ora... chi ha scritto quella guida ha commesso secondo me un errore grossolano. potrebbe benissimo averlo fatto un buona fede perché quella persona era convinta di quello che stava scrivendo.
> ...

 

Capisco, capisco... e sono d'accordo. Però capirai anche che, in virtù della stessa libertà, qualcun altro che la pensa come te avrebbe dovuto farlo notare all'autore originale: questo è importante soprattutto per quei nuovi utenti che (come me) hanno bisogno di una lista di comandi da eseguire con adeguati commenti sull'effetto degli stessi, piuttosto che un semplice RTFM... ma non posso lamentarmi, almeno nel caso di Gentoo  :Wink: 

Inoltre, rileggendo il link postato due messaggi più sopra, che avevo letto probabilmente troppo superficialmente, viene affermato che "they changed the ABI in subtle ways without a .so bump. This means that things will break, though only a few things.". Quindi la ricompilazione sembrerebbe necessaria...

 *Quote:*   

> poi pensa una cosa: world comprende system. che senso ha ricompilare prima system e poi world, che lo comprende? ricompileresti system due volte. già qui c'è un controsenso

 

Spiegazione fornitami da <non ricordo chi>: questo fa sì che, ricompilando world, i tool e le librerie di sistema siano già aggiornate alla nuova versione del compilatore e di glibc. Se questa è una stupidata, ti rispondo: non sono ancora abbastanza esperto da poterlo dire  :Wink: 

----------

## darkmanPPT

purtroppo io sn stato un po' fesso.. ed ho eseguito l'emerge -e system

e quando è toccato a groff ho avuto problemi:

[/code]make[2]: Leaving directory `/var/tmp/portage/groff-1.19.1-r2/work/groff-1.19.1/doc'

make[2]: Entering directory `/var/tmp/portage/groff-1.19.1-r2/work/groff-1.19.1'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/var/tmp/portage/groff-1.19.1-r2/work/groff-1.19.1'

make[1]: Leaving directory `/var/tmp/portage/groff-1.19.1-r2/work/groff-1.19.1'

imake -DUseInstalled -I/usr/lib/X11/config

Imakefile.c:34: error: Imake.tmpl: No such file or directory

imake: Exit code 1.

  Stop.

!!! ERROR: sys-apps/groff-1.19.1-r2 failed.

Call stack:

  ebuild.sh, line 1539:   Called dyn_compile

  ebuild.sh, line 939:   Called src_compile

  groff-1.19.1-r2.ebuild, line 96:   Called die

[code]

e che balle....   :Confused: 

poi ho fatto resume e skipfirst e il resto è andato.

anche quando sn passato al gcc nuovo l'altra volta ho avuto sti problemi.. che si sono risolti in modo innaspettato riemergento tutto world....

mah

----------

## mrfree

 *k.gothmog wrote:*   

> poi pensa una cosa: world comprende system. che senso ha ricompilare prima system e poi world, che lo comprende? ricompileresti system due volte. già qui c'è un controsenso
> 
> quello che serve è libtool e forse solamente system, ma non di certo world

 

Beh questo forse una spiegazione ce l'ha... è una sorta di boostrap (mica ce lo siamo scordato):

il compilato che ricompila se stesso   :Laughing: 

----------

## .:chrome:.

 *dark_knight wrote:*   

> Mi spiego: se non volessi usare nptl e nptlonly, non potrei aggiornare glibc... e quindi, se voglio avere un sistema aggiornato, devo usarli invece dei LinuxThread (questo in risposta alla tua affermazione, che mi sembrava sollevare dei dubbi sul passaggio forzato a nptl: "oggi la completa rimozione di LinuxThreads potrebbere rompere la compatibilità verso alcune applicazioni. "). Se ho interpretato male, ignora pure...

 

non hai capito male. ti sfugge solo che esiste anche il profilo "no-nptl"  :Wink: 

 *dark_knight wrote:*   

> Capisco, capisco... e sono d'accordo. Però capirai anche che, in virtù della stessa libertà, qualcun altro che la pensa come te avrebbe dovuto farlo notare all'autore originale: questo è importante soprattutto per quei nuovi utenti

 

hai ragione... io una volta l'ho fatto. mi hanno risposto "ok, mandami il diff del file". un po' per pigrizia, un po' per mancanza di tempo non l'ho mai finito

 *dark_knight wrote:*   

> Inoltre, rileggendo il link postato due messaggi più sopra, che avevo letto probabilmente troppo superficialmente, viene affermato che "they changed the ABI in subtle ways without a .so bump. This means that things will break, though only a few things.". Quindi la ricompilazione sembrerebbe necessaria...

 

se le cose stanno così si... quello che io dico è che non vedo dove possa essere stato questo cambio sull'ABI

a me risulta che a quel livello non sia cambiato niente, e questo perché, come spiegavo prima, il passsaggio non è stato brusco, ma graduale. o forse no? a me sembrava che nel 2006.0 fosse già presente USE="nptl" e che fosse già abilitata per default. mi sbaglio?

 *dark_knight wrote:*   

> Spiegazione fornitami da <non ricordo chi>: questo fa sì che, ricompilando world, i tool e le librerie di sistema siano già aggiornate alla nuova versione del compilatore e di glibc. Se questa è una stupidata, ti rispondo: non sono ancora abbastanza esperto da poterlo dire 

 

secondo me non è assolutamente necessario

nel caso non fosse stato chiaro fino ad ora lo scrivo in modo chiarissimo: un cambiamento ABI porta alla rottura di compatibilità verso quasiasi applicazione. questo implica avviare con un liveCD e ricompilare tutto perché altrimenti non funziona più niente e niente è più uin grado di funzionare.

non mi sembra proprio che siamo in questa condizione

----------

## GiRa

 *mrfree wrote:*   

> Beh questo forse una spiegazione ce l'ha... è una sorta di boostrap (mica ce lo siamo scordato):

 

Ci avevo pensato anche io, però il bootstrap si fa ai compilatori  :Smile:  Infatti mi pare d'aver notato che quando si compila GCC le stesse azioni vengono eseguite due, tre volte.

Io al momento sto ricompilando tutto, solo perchè son mesi che leggo delle fantasmagoriche prestazioni dei binari compilati con GCC4 su AMD64, speriamo bene!!

Con -e system è andato tutto ok, ora col world ho qualche ebuild che fallisce (al momento 3 e ne mancano altre 400): segno il tutto in un file di testo e vado di resume. Per fortuna (?) mi sta capitando solo su applicazioni "non critiche".

----------

## lavish

Fallisce fox, e con esso le applicazioni likate a fox! https://bugs.gentoo.org/show_bug.cgi?id=145046

Maledizione   :Evil or Very Mad: 

----------

## makoomba

 *k.gothmog wrote:*   

> l'interfaccia ABI (Application Binary Interface) non cambia. un suo cambiamento è l'unico motivo che mi viene in mente per cui uno dovrebbe ricompilare tutto il sistema.
> 
> oltretutto il problema non è nemmeno il compilatore, perché quello è assolutamente ininfluente, da quel punto di vista.

 

https://forums.gentoo.org/viewtopic-p-3541436.html#3541436

----------

## .:deadhead:.

Un suggerimento che non mi sembra di aver visto riportato: cambiato gcc e glibc fatevi un giro con 

```
fix_libtool_files.sh 3.4
```

Così da cambiare i riferimenti che puntano alla vecchia locazione della libreria.

E vi consiglio anche di non dare il benservito al buon vecchio gcc 3.4  : alcuni pacchetti si compilano solo con lui, vedi ad esempio qemu.

----------

## comio

 *.:deadhead:. wrote:*   

> 
> 
> E vi consiglio anche di non dare il benservito al buon vecchio gcc 3.4  : alcuni pacchetti si compilano solo con lui, vedi ad esempio qemu.

 

troppo tardi...  :Smile:  (anche se ho preparato un quickpkg se proprio mi servirà).

----------

## dark_knight

 *.:deadhead:. wrote:*   

> Un suggerimento che non mi sembra di aver visto riportato: cambiato gcc e glibc fatevi un giro con 
> 
> ```
> fix_libtool_files.sh 3.4
> ```
> ...

 

Putroppo questa indicazione è presente soltanto sulla guida in lingua inglese e non quella italiana  :Sad: 

----------

## .:deadhead:.

Come già osservato, la guida italiana NON E' AGGIORNATA! Controllate sempre la data di ultima modifica presente in alto a Dx e confrontate con la documentazione inglese se avete dubbi in merito.

----------

## ercoppa

Nulla, errore mio stupidoLast edited by ercoppa on Fri Sep 01, 2006 10:34 am; edited 1 time in total

----------

## Luca89

Seguendo la guida inglese sono riuscito a fare l'upgrade di gcc e glibc, ho saltato solo i vari "emerge -e", non mi va di riemergere tutto. Nel nuovo gcc ho disabilitato la flag use "fortran", visto che fino ad ora non ne ho usato programmi scritti in fortran. Speriamo bene.  :Smile: 

----------

## comio

 *ercoppa wrote:*   

> Scusate ma non riesci a fare lo switch:
> 
> ```
> 
> gentoo emilio # gcc-config x86_64-pc-linux-gnu-4.1.1
> ...

 

non capisco dove è il tuo problema... mi pare ok...

ciao

----------

## dark_knight

 *Luca89 wrote:*   

> Nel nuovo gcc ho disabilitato la flag use "fortran", visto che fino ad ora non ne ho usato programmi scritti in fortran. Speriamo bene. 

 

Nella mia limitata esperienza tra i pacchetti, tra quelli che ho incontrato solo octave necessita di un compilatore con fortran abilitato...

----------

## makoomba

visto che a fondo pagina ha poca visibiltà, riposto l'intervento di Chris Gianelloni (Release Engineering Strategic Lead)

 *wolf31o2 wrote:*   

> Here's the thing... revdep-rebuild will *not* work because they changed the ABI in subtle ways without a .so bump. This means that things will break, though only a few things. The only truly *safe* method is to use emerge -e system to upgrade your toolchain, then emerge -e world, to update your userland. You *could* skip the emerge -e world and just let things recompile on their own, but there's still the possibility of bugs being introduced because of this. To be honest, the revdep-rebuild option should have never been mentioned for the 3.3->3.4 upgrade, except that it is actually valid in that case. Preferable, would have been to force a complete recompile, like for 4.1, with 3.3->3.4 also.
> 
> The only real safe option is a rebuild of system, then world. Feel free to ignore me, though. It's your system. However, we don't just make these recommendations to make them. We have good reason.

 

----------

## Cazzantonio

sto ricompilando tutto ma già dopo l'emerge -e system ho tolto il vecchio gcc (dopo aver generato un simpatico pacchetto binario   :Wink:  ) e mi funziona tutto

----------

## gutter

Io posticipo tutto alla prossima settimana   :Wink: 

Nel frattempo vediamo i problemi che si incontrano    :Very Happy: 

----------

## Peach

```
# emerge -eav system
```

orka vacca.. mi si blocca su baselayout!

----------

## tizio

in attesa che si capisca se il sistema vada ricompilato o no da zero... (intanto io non ricompilo visto che funziona tutto)

come posso capire se il mio sistema utilizza nptl? 

in /etc/make.profile/make.defaults nelle USE ho -nptl... ma anche se metto nptl un --newuse non mi cambia nulla

e glibc è fermo alla 2.3.6-r4... 

dove sbaglio? e soprattutto... sbaglio? mi conviene mettere nptl? o usando un sistema stabile mi farà fare lui il passaggio quando meglio crede?

scusate ma non ne so mezza.. grazie a chiunque mi dia delucidazioni..

----------

## makami

Io sono passato a gcc 4 già da giugno, non ho ricompilato il system e tantomeno il world.

Posso dire che non ha mai cannato nessun pacchetto fino ad oggi, tutto funziona per bene..

questo è il mio caso..

----------

## btbbass

Era ora, finora nn avevo ancora visto nessun thread di problemi, cominciavo a preoccuparmi  :Smile: ))

Praticamente ho aggiornato da gcc-4.0.3 a gcc-4.1.1 seguendo la guida e cambiando il profilo al 2006.1.

poi ho dato il fatidico

```
emerge -e system
```

ottnendo però, durante la compilazione del primo pacchetto -sys-libs/zlib-1.2.3  - 

```

i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -fomit-frame-pointer -DNO_vsnprintf -DUSE_MMAP -o example example.o -Wl,-O1 libz.a

/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld:/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../libc.so: file format not recognized; treating as linker script

/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld:/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../libc.so:5: syntax error

collect2: ld returned 1 exit status

make: *** [example] Error 1

```

cavolo, mi sono detto, ettepareva...

Notare che avevo già installato le glibc-2.4.

Notando che libc.so appartiene alle glibc, ho provato ad emergerle una seconda volta, ma questa volta l'emerge fallisce dandomi come errore:

```

checking for unistd.h... yes

checking for long double... yes

checking size of long double... configure: error: cannot compute sizeof (long double), 77

See `config.log' for more details.

```

che fare????

Praticamente non posso installare più nulla, neanche con il vecchio gcc...

----------

## .:chrome:.

 *makoomba wrote:*   

>  *k.gothmog wrote:*   l'interfaccia ABI (Application Binary Interface) non cambia. un suo cambiamento è l'unico motivo che mi viene in mente per cui uno dovrebbe ricompilare tutto il sistema.
> 
> oltretutto il problema non è nemmeno il compilatore, perché quello è assolutamente ininfluente, da quel punto di vista. 
> 
> https://forums.gentoo.org/viewtopic-p-3541436.html#3541436

 

questa l'ho già spiegata.

volendo ben vedere quel cambio di ABI non c'è stato, in realtà

inutile che stia a ripetermi, è tutto nei post indietro

----------

## .:chrome:.

la configurazione del linker è ancora quella vecchia

verifica di:

- avere usato gcc-config nel modo opportuno

- avere lanciato eventuali etc-update e simili

- avere ricompilato quantomeno libtool

----------

## lavish

Fatto il merge del thread aperto da btbbass

Per favore... diamo un occhio che discussioni simili non siano già state aperte prima di postare, soprattuto se sono sticky   :Rolling Eyes: 

----------

## mrfree

Non per fare pubblicità gratuita... durante l'emerge -e world ho avuto qualche problemino il che mi ha portato a scrivere questo piccolo tool per evitare di buttare alle ortiche il lavoro di ricompilazione già svolto.

Spero sia utile

----------

## inspiron

per fare emerge -e system e emerge -e world mi bastano 900mb liberi su disco?

poi se emerge -e world si blocca per qualche motivo a meta dell'opera che devo fare? ricompilare tutto quello che avevo gia compilato?

----------

## geps2

Perché a me a questo punto

 *dark_knight wrote:*   

> Due annotazioni:
> 
> ```
> 
> (Rebuilding libtool)
> ...

 

da questo errore? Puoi aiutarmi per favore?

```

.....

checking build system type... Invalid configuration `i386-pc-linux-gnu-4.1.1': machine `i386-pc-linux-gnu' not recognized

configure: error: /bin/sh ./config.sub i386-pc-linux-gnu-4.1.1 failed

!!! Please attach the following file when filing a report to bugs.gentoo.org:

!!! /var/tmp/portage/libtool-1.5.22/work/libtool-1.5.22/config.log

!!! ERROR: sys-devel/libtool-1.5.22 failed.?

Call stack:

  ebuild.sh, line 1539:   Called dyn_compile

  ebuild.sh, line 939:   Called src_compile

  libtool-1.5.22.ebuild, line 128:   Called econf

  ebuild.sh, line 541:   Called die

!!! econf failed

!!! If you need support, post the topmost build error, and the call stack if relevant.

```

Mi sembra di aver fatto correttamete tutti i passi precedenti...

PS: Ho capito dove ho sbagliato: non ho dato il comando 

```
# fix_libtool_files.sh 3.4.6
```

 prima di 

```
# emerge --oneshot -av libtool
```

. ora se faccio 

```
# gcc -v
```

 ho questo output: 

```
fix_libtool_files.sh 3.4.6
```

 Ho provato a tornare indietro, ma non cambia nulla. E' grave? Si può rimediare? Sono abbastanza nel panico...Last edited by geps2 on Sun Sep 03, 2006 3:39 pm; edited 1 time in total

----------

## lavish

 *inspiron wrote:*   

> per fare emerge -e system e emerge -e world mi bastano 900mb liberi su disco?

 

Boh, dipende da che programmi hai insallato.. sicuramente a me, con una periodica pulizia di distfiles, basterebbero

 *inspiron wrote:*   

> poi se emerge -e world si blocca per qualche motivo a meta dell'opera che devo fare? ricompilare tutto quello che avevo gia compilato?

 

Leggi il post che precede il tuo  :Wink: 

----------

## Luca89

 *inspiron wrote:*   

> per fare emerge -e system e emerge -e world mi bastano 900mb liberi su disco?

 

dipende dai pacchetti, i piÃ¹ esosi sono openoffice, mozilla-firefox e mozilla-thunderbird

 *Quote:*   

> poi se emerge -e world si blocca per qualche motivo a meta dell'opera che devo fare? ricompilare tutto quello che avevo gia compilato?

 

vedi post prima del tuo

----------

## lavish

@geps2: come mai compili per i386?

----------

## inspiron

emerge -eav world mi devo che deve scaricare e compilare 1,1gb.

mi bastano 900mb di spazio libero?

un ultima cosa: attualmente il mio profilo è il 2006.0.

Devo passare al 2006.1?

in caso come si fa?

----------

## Luca89

 *inspiron wrote:*   

> emerge -eav world mi devo che deve scaricare e compilare 1,1gb.
> 
> mi bastano 900mb di spazio libero?

 

allora evidentemente non ti basteranno

 *Quote:*   

> un ultima cosa: attualmente il mio profilo ï¿½ il 2006.0.
> 
> Devo passare al 2006.1?
> 
> in caso come si fa?

 

Ã¨ ininfluente, comunque:

```
cd /etc

rm make.profile

ln -s ../usr/portage/profiles/default-linux/x86/2006.1/desktop make.profile

```

----------

## lavish

@inspiron: procedi con emerge -e world, poi si interromperà per mancanza di spazio su disco. Cancella i distfiles e dai un emerge --resume 

Per quanto riguarda il profilo, non ritengo sia il caso di spiegarti una cosa già affrontata ampiamente sia qui sul forum che nele guide ufficiali.

----------

## geps2

 *lavish wrote:*   

> @geps2: come mai compili per i386?

 

mmm... bella domanda. credo di aver fatto qualche ca..ata. Spero mi possiate aiutare a rimediare   :Embarassed: Last edited by geps2 on Sun Sep 03, 2006 4:25 pm; edited 1 time in total

----------

## .:chrome:.

 *inspiron wrote:*   

> emerge -eav world mi devo che deve scaricare e compilare 1,1gb.
> 
> mi bastano 900mb di spazio libero?
> 
> un ultima cosa: attualmente il mio profilo è il 2006.0.
> ...

 

ma è uno scherzo o cosa? stai prendendo in giro l'intero forum o davvero non ci arrivi?

a casa mia 1,1 GB è maggiore di 900 MB. tu da questo cosa deduci?

che palle, gente... adesso la gente posta sul forum anche perché non conosce la matematica?

per cambiare profilo poi se n'è parlato decine di volte. cercare nel forum prima di postare

----------

## lavish

 *k.gothmog wrote:*   

> ma è uno scherzo o cosa? stai prendendo in giro l'intero forum o davvero non ci arrivi?
> 
> a casa mia 1,1 GB è maggiore di 900 MB. tu da questo cosa deduci?
> 
> che palle, gente... adesso la gente posta sul forum anche perché non conosce la matematica?

 

Ehy ehy, calmino su  :Smile: 

Ovvio che l'emerge -e world fllirà prima o poi, ma non è detto che non ci sia modo di portarlo ugualmente a buon fine  :Wink: 

Oltre a questo, volevo far presente agli amici del mondo embedded che manca una patch affinchè si compili gcc-4.1.1 con uclibc. Il bug e la soluzione relativa, li potete trovare qui: https://bugs.gentoo.org/show_bug.cgi?id=134412

Ciao!

----------

## inspiron

 *k.gothmog wrote:*   

>  *inspiron wrote:*   emerge -eav world mi devo che deve scaricare e compilare 1,1gb.
> 
> mi bastano 900mb di spazio libero?
> 
> un ultima cosa: attualmente il mio profilo è il 2006.0.
> ...

 

e tu saresti un veterano?

se il forum fosse mio io uno come te lo caccerei dopo due giorni

----------

## lavish

Uheè inspiron, please, k.gothmog è uno degli utenti più attivi del forum e dedica moltissimo tempo alla comunità.

Cerchiamo di stare tranquilli per favore

----------

## .:chrome:.

 *inspiron wrote:*   

> e tu saresti un veterano?
> 
> se il forum fosse mio io uno come te lo caccerei dopo due giorni

 

non so se ti sei accorto che:

- hai postato per chiedere quanto fa 1100 - 900

- hai postato chiedendo una cosa di cui si era parlato nel forum non so quante volte e che è scritta nella guida all'installazione, nella documentazione ufficiale e non, nel wiki, e non so dove altro.

scusa se mi sono sentito preso per il culo da uno che fa certe domande.Last edited by .:chrome:. on Sun Sep 03, 2006 4:20 pm; edited 2 times in total

----------

## inspiron

 *lavish wrote:*   

> Uheè inspiron, please, k.gothmog è uno degli utenti più attivi del forum e dedica moltissimo tempo alla comunità.
> 
> Cerchiamo di stare tranquilli per favore

 

ed è vero...

ma in questo caso ha dimostrato che non sa dove sta di casa l'educazione...

----------

## lavish

 *inspiron wrote:*   

> ma in questo caso ha dimostrato che non sa dove sta di casa l'educazione...

 

Avevo già fatto un richiamo, non serviva attaccarlo in questo modo. 

Ora vediamo di finirla per favore.

----------

## .:chrome:.

 *inspiron wrote:*   

> ma in questo caso ha dimostrato che non sa dove sta di casa l'educazione...

 

tu invece hai mai pensato che il rank, in questo forum, non è indice della bravura, ma di quanto la gente si è sbattuta (quanto tempo ha speso) per aiutare gli altri?

sarà opinione criticabile, ma di fronte certe domande il tempo non è speso, ma sprecato. se non so quanto fa 1100 - 900 prendo la calcolatrice, non mi ridicolizzo su un forum

----------

## inspiron

 *k.gothmog wrote:*   

>  *inspiron wrote:*   ma in questo caso ha dimostrato che non sa dove sta di casa l'educazione... 
> 
> tu invece hai mai pensato che il rank, in questo forum, non è indice della bravura, ma di quanto la gente si è sbattuta (quanto tempo ha speso) per aiutare gli altri?
> 
> sarà opinione criticabile, ma di fronte certe domande il tempo non è speso, ma sprecato. se non so quanto fa 1100 - 900 prendo la calcolatrice, non mi ridicolizzo su un forum

 

se leggi ad inizio pagina capisci come rispondono delle persone educate (luca89 e lavish)...

cmq visto che non capisci volevo solo chiedere come potevo far terminare emerge -e world, ma a questo mi ha gia risposto lavish con eleganza e gentilezza.

----------

## Ic3M4n

io al posto che piallare interamente i distfiles, cosa che aborro perchè mi sembra un'eccessivo spreco di risorse da parte dei mirror gentoo preferisco cercare di rimediare con eclean-dist, se hai veramente bisogno di spazio ti basta aggiungere anche l'opzione -d che comunque è sempre meglio che piallare tutto.

in ogni caso: 

 *inspiron wrote:*   

> 
> 
> emerge -eav world mi devo che deve scaricare e compilare 1,1gb.
> 
> mi bastano 900mb di spazio libero?
> ...

 

per come è stata scritta la cosa mi sembra che la risposta di k.gothmog possa anche starci. calcolando che non ti sei nemmeno degnato di cercare come si possa cambiare un profilo, cosa che è stata ribadita molte volte. in ogni caso se volete continuare ( e vale anche per k.gothmog) potreste farlo in privato e non in un thread in cui si cercano di risolvere problemi?

----------

## makoomba

@k.gothmog e inspiron.

moderate i toni e tornate IT oppure continuate la vs discussione in PM

questo è un 3d troppo importante perchè lo si debba lockare a causa di una polemica inutile.

----------

## geps2

 *makoomba wrote:*   

> @k.gothmog e inspiron.
> 
> moderate i toni e tornate IT oppure continuate la vs discussione in PM
> 
> questo è un 3d troppo importante perchè lo si debba lockare a causa di una polemica inutile.

 

Ehm... tanto per tornare IT... come faccio a rimediare al casino che ho combianto? Vorrei a) compilare per 686 b) aggiornare a gcc 4.1.1...

mi sa che da solo non ne vengo fuori...  :Crying or Very sad: 

----------

## .:chrome:.

 *geps2 wrote:*   

> come faccio a rimediare al casino che ho combianto? Vorrei a) compilare per 686 b) aggiornare a gcc 4.1.1...
> 
> mi sa che da solo non ne vengo fuori... 

 

tanto per cominciare dovresti rimettere a posto CHOST, che come è stato scritto diverse volte non dovrebbe mai essere cambiata.

l'alternativa sarebbe un emerge -e system (credo che basti) prima di fare qualunque altra cosa. questo sarebbe sicuramente un primo passo, poi vediamo cosa succede da qui in avanti.

suggerimento: io aprirei un thread dedicato

----------

## ercoppa

[quote=k.gothmog]è necessario qualcosa, come un emerge -e libtool, o emerge -e system (forse), ma tutto il sistema è davvero stupido [/quote]

scusa, una persona mi ha fatto leggere questo, lui sostiene che andrebbe ricompilato il mondo e che  "they changed the ABI in subtle ways without a .so bump". Sono confuso   :Crying or Very sad: 

----------

## .:chrome:.

 *ercoppa wrote:*   

> scusa, una persona mi ha fatto leggere questo, lui sostiene che andrebbe ricompilato il mondo e che  "they changed the ABI in subtle ways without a .so bump". Sono confuso  

 

che palle! posso scriverlo? se non posso pazienza, ormai l'ho scritto

è la terza volta che mi si fa questa domanda nello stesso thread e per la terza volta ripeto che il cambio di ABI in realtà NON C'È STATO.

maggiori spiegazioni nei post precedenti. adesso mi sono stufato di ripetere

----------

## gamberetto

Ciao, volevo segnalare un problema che ho riscontrato dopo l'aggiornamento, ho anche dato fix_libtool_files.sh. Ma non mi avviava kmail: da console mi diceva che non trovava CXX_ABI_1.3.5 in qualche libreria o cosa. Purtroppo adesso ho rifatto l'emerge di kmail e tutto si è risolto, e non posso postarvi il messaggio corretto.

Volevo solo informare del problema che ho incontrarto e di come l'ho risolto.  :Wink: 

Ciao!

PS: ho qualche vago sospetto che tutto questo sia dovuto all'aggiornamento di glibc, ma sono ignorante in materia  :Rolling Eyes:  

----------

## geps2

 *k.gothmog wrote:*   

>  *geps2 wrote:*   come faccio a rimediare al casino che ho combianto? Vorrei a) compilare per 686 b) aggiornare a gcc 4.1.1...
> 
> mi sa che da solo non ne vengo fuori...  
> 
> tanto per cominciare dovresti rimettere a posto CHOST, che come è stato scritto diverse volte non dovrebbe mai essere cambiata.
> ...

 

Purtroppo adesso ho un problema con il RAID (spero che le due cose non siano collegate, altrimenti sì che sono guai!!!). aprirò il thread non appena avrò risolto questo altro problema...

comunque emerge -e system va avanti fino a che non ottengo questo errore, che ottengo ugualmente se cambio il 386 in 686 nel make.conf

```
...

configure: error: /bin/sh /var/tmp/portage/ncurses-5.5-r2/work/ncurses-5.5/config.sub i386-pc-linux-gnu-4.1.1 failed.

!!! Please attach the following file when filing a report to bugs.gentoo.org:

!!! /var/tmp/portage/ncurses-5.5-r2/work/narrowc/config.log

!!! ERROR: sys-libs/ncurses-5.5-r2 failed.

Call stack:

  ebuild.sh, line 1539:   Called dyn_compile

  ebuild.sh, line 939:   Called src_compile

  ncurses-5.5-r2.ebuild, line 49:   Called do_compile

  ncurses-5.5-r2.ebuild, line 70:   Called econf '--libdir=/lib' '--with-terminfo-dirs=/etc/terminfo:/usr/share/terminfo' '--disable-termcap' '--with-shared' '--with-rcs-ids' '--without-ada' '--enable-symlinks' '--enable-const' '--with-chtype=long' '--with-mmask-t=long' '--without-debug' '--with-gpm'

  ebuild.sh, line 541:   Called die

!!! econf failed

!!! If you need support, post the topmost build error, and the call stack if relevant.

```

sto andando abastanza nel panico....  :Shocked: 

----------

## .:chrome:.

@geps2:

hai ricompilato libtool?

----------

## makoomba

@geps2

```
emerge -e glibc binutils gcc && emerge -e system
```

----------

## geps2

 *k.gothmog wrote:*   

> @geps2:
> 
> hai ricompilato libtool?

 

con questo comando?

```
# emerge --oneshot -av libtool 
```

sì, ma dava errore perché come un cretino non ho fatto il fix...

----------

## geps2

 *makoomba wrote:*   

> @geps2
> 
> ```
> emerge -e glibc binutils gcc && emerge -e system
> ```
> ...

 

mmm. Ok, proverò quanto prima. Grazie a tutti, se non riesco entro domani raccolgo le idee e apro un nuovo thread.

Ciao!

----------

## Cazzantonio

Nessuno di voi ha avuto problemi con i driver ipw2200? A me non fungono se compilati con il 4.1.1

----------

## .:chrome:.

 *Cazzantonio wrote:*   

> Nessuno di voi ha avuto problemi con i driver ipw2200? A me non fungono se compilati con il 4.1.1

 

non vengono compilati? o compilano ma non funzionano?

se è il promo caso, a me è capitato spesso del software che non compilava, ma bastava cercare la release immediatamente successiva e già avevano adattato il codice al nuovo compilatore.

se invece compila ma non va, bisognerebbe vedere un po' cosa non va. non carica il modulo? carica il modulo ma non rileva la scheda? rileva la sceda ma non si aggancia?

ultimissima domanda: hai compilato anche il kernel con la stessa versione del compilatore? hai tolto dal kernel la voce "Optimize for size" e "mregparm=3"?

----------

## tizio

 *k.gothmog wrote:*   

>  hai tolto dal kernel la voce "Optimize for size" e "mregparm=3"?

 

perchè? cosa fanno? (optimize for size posso immaginarlo...) 

è un consiglio specifico per il suo problema o per tutti quelli che aggiornano gcc?

e mregparm=3 è questa voce qua?:

```

root:/usr/src/linux# cat .config | grep REGPARM

# CONFIG_REGPARM is not set

```

----------

## ercoppa

Posto qui perchè credo che sia un problema legato al nuovo gcc: non riesco a compilare 

```
[ebuild   R   ] app-accessibility/speech-tools-1.2.3-r3  USE="X esd* -doc" 0 kB
```

Premetto che sto su amd64, la use esd l'ho aggiunto qualche minuto fa, ma non compilava anche senza, ecco l'errore

```
....

../include/EST_TIterator.h: In member function Entry& EST_TRwIterator<Container, IPointer, Entry>::current() const:

../include/EST_TIterator.h:253: error: cont was not declared in this scope

../include/EST_TIterator.h:253: error: pointer was not declared in this scope

../include/EST_TIterator.h: In member function Entry& EST_TRwIterator<Container, IPointer, Entry>::next_element():

../include/EST_TIterator.h:267: error: cont was not declared in this scope

../include/EST_TIterator.h:267: error: pointer was not declared in this scope

../include/EST_TIterator.h: In constructor EST_TRwStructIterator<Container, IPointer, Entry>::EST_TRwStructIterator():

../include/EST_TIterator.h:284: error: cont was not declared in this scope

../include/EST_TIterator.h: In member function EST_TIterator<Container, IPointer, Entry>& EST_TRwStructIterator<Container, IPointer, Entry>::operator=(const EST_TIterator<Container, IPointer, Entry>&):

../include/EST_TIterator.h:288: error: cont was not declared in this scope

../include/EST_TIterator.h:288: error: pos was not declared in this scope

../include/EST_TIterator.h:288: error: pointer was not declared in this scope

../include/EST_TIterator.h: In member function Entry* EST_TRwStructIterator<Container, IPointer, Entry>::operator->() const:

../include/EST_TIterator.h:295: error: there are no arguments to current that depend on a template parameter, so a declaration of current must be available

../include/EST_TList.h: At global scope:

../include/EST_TList.h:226: warning: friend declaration std::ostream& operator<<(std::ostream&, const EST_TList<T>&) declares a non-template function

../include/EST_TList.h:226: warning: (if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning

../include/EST_TVector.h:312: warning: friend declaration std::ostream& operator<<(std::ostream&, const EST_TVector<T>&) declares a non-template function

../include/EST_TKVL.h:61: warning: friend declaration std::ostream& operator<<(std::ostream&, const EST_TKVI<K, V>&) declares a non-template function

../include/EST_TKVL.h:146: warning: friend declaration std::ostream& operator<<(std::ostream&, const EST_TKVL<K, V>&) declares a non-template function

../include/EST_TMatrix.h:307: warning: friend declaration std::ostream& operator<<(std::ostream&, const EST_TMatrix<T>&) declares a non-template function

../include/EST_TMatrix.h: In member function unsigned int EST_TMatrix<T>::mcell_pos(int, int) const:

../include/EST_TMatrix.h:107: error: p_column_step was not declared in this scope

../include/EST_TMatrix.h: In member function const T& EST_TMatrix<T>::fast_a_m(int, int) const:

../include/EST_TMatrix.h:119: error: p_memory was not declared in this scope

../include/EST_TMatrix.h: In member function T& EST_TMatrix<T>::fast_a_m(int, int):

../include/EST_TMatrix.h:121: error: p_memory was not declared in this scope

../include/EST_TMatrix.h: In member function const T& EST_TMatrix<T>::fast_a_1(int, int) const:

../include/EST_TMatrix.h:124: error: p_memory was not declared in this scope

../include/EST_TMatrix.h: In member function T& EST_TMatrix<T>::fast_a_1(int, int):

../include/EST_TMatrix.h:126: error: p_memory was not declared in this scope

../include/EST_TMatrix.h: In member function int EST_TMatrix<T>::num_columns() const:

../include/EST_TMatrix.h:178: error: p_num_columns was not declared in this scope

../include/EST_TMatrix.h: In member function void EST_TMatrix<T>::fill():

../include/EST_TMatrix.h:217: error: def_val was not declared in this scope

../include/EST_TSimpleVector.h: In member function void EST_TSimpleVector<T>::empty():

../include/EST_TSimpleVector.h:77: error: def_val was not declared in this scope

../include/EST_TSimpleVector.h:77: error: there are no arguments to fill that depend on a template parameter, so a declaration of fill must be available

slib.cc: In function void gc_mark_and_sweep():

slib.cc:1088: warning: dereferencing type-punned pointer will break strict-aliasing rules

make[1]: *** [slib.o] Error 1

make: *** [siod] Error 2

!!! ERROR: app-accessibility/speech-tools-1.2.3-r3 failed.

Call stack:

  ebuild.sh, line 1539:   Called dyn_compile

  ebuild.sh, line 939:   Called src_compile

  speech-tools-1.2.3-r3.ebuild, line 51:   Called die

!!! (no error message)

!!! If you need support, post the topmost build error, and the call stack if relevant.
```

è legato a gcc 4.1? c'è modo di risolvere visto che non c'è una nuova versione?

EDIT: sembra di si, anche nel 3d inglese, un utente dice che non si compila, non mi sembra di aver visto la soluzione

----------

## Dece

 *Cazzantonio wrote:*   

> Nessuno di voi ha avuto problemi con i driver ipw2200? A me non fungono se compilati con il 4.1.1

 

Io, ma non so dire se fosse colpa di gcc: utilizzo i driver del kernel e al passaggio al 2.6.17 (compilato per la prima volta con gcc 4.1) non mi caricava il firmware: ho risolto con 

```
emerge ipw2200-firmware
```

----------

## Cazzantonio

 *k.gothmog wrote:*   

> ultimissima domanda: hai compilato anche il kernel con la stessa versione del compilatore? hai tolto dal kernel la voce "Optimize for size" e "mregparm=3"?

 

Bravo mi sa che era questa   :Smile: 

mregparam non so cosa sia mentre "Optimize for size" temo di averla abilitata... è grave?   :Rolling Eyes:  Devo essere sincero che non ho idea di cosa faccia ne di quando la posso avere abilitata ma non mi ha mai dato problemi   :Rolling Eyes: 

----------

## misterwine

Ciao. Ho appena fatto un aggiornamento dell' albero del portage e ho notato il gcc-4.1.1; Ora sto aggiornando tutti i pacchetti. Dato che uso questa installazione di gentoo da circa sei mesi, volevo sapere se e come è possibile ricompilare l' intero sistema con il nuovo compilatore (dato che penso di aver installato inizialmente tutto con un gcc della serie 3...) grazie

----------

## Luca89

ehm, hai letto il thread messo sticky? c'è spiegato tutto lì.

EDIT: qualcuno ha fatto il merge mentre rispondevo

----------

## lavish

Fatto il merge del thread aperto da misterwine... per f-a-v-o-r-e, il thread su gcc-4 è sticky, fate attenzione, grazie

----------

## geps2

 *makoomba wrote:*   

> @geps2
> 
> ```
> emerge -e glibc binutils gcc && emerge -e system
> ```
> ...

 

emergendo qualsiasi cosa ottengo sempre errori del tipo: 

```
configure: error: installation or configuration problem: C compiler cannot create executable
```

Ci sono anche altri dettagli e un file di log, li posterò nel thread che sto aprendo.

----------

## .:chrome:.

 *Cazzantonio wrote:*   

> Bravo mi sa che era questa  
> 
> mregparam non so cosa sia mentre "Optimize for size" temo di averla abilitata... è grave?   Devo essere sincero che non ho idea di cosa faccia ne di quando la posso avere abilitata ma non mi ha mai dato problemi  

 

optimize for size può dare a volte delle rogne, mentre mregparm=3 le da in particolare con i driver delle schede wireless (ndiswrapper addisirttura non si compila nemmeno).

----------

## starise

 *k.gothmog wrote:*   

> 
> 
> optimize for size può dare a volte delle rogne, mentre mregparm=3 le da in particolare con i driver delle schede wireless (ndiswrapper addisirttura non si compila nemmeno).

 

Uhmm... sicuro? io proprio un paio di giorni fa ho ricompilato il kernel e ho letto su un howto del wiki (accidenti a me che non riesco a ritrovarlo!) che è un opzione utile da selezionare per aumentare le prestazioni, quindi l'ho inserita! Fino ad ora però nessun problema.   :Wink: 

----------

## nick_spacca

 *Cazzantonio wrote:*   

>  *k.gothmog wrote:*   ultimissima domanda: hai compilato anche il kernel con la stessa versione del compilatore? hai tolto dal kernel la voce "Optimize for size" e "mregparm=3"? 
> 
> Bravo mi sa che era questa  
> 
> mregparam non so cosa sia mentre "Optimize for size" temo di averla abilitata... è grave?   Devo essere sincero che non ho idea di cosa faccia ne di quando la posso avere abilitata ma non mi ha mai dato problemi  

 

Ale, penso proprio che il tuo problema è che ti sei scordato di ricompilare il kernel (o di far partire quello nuovo   :Twisted Evil:  )....io ho fatto il passaggio 2 giorni fa, ricompilando gli ipw2200 e tutto viaggia senza problemi!!!!

Nick_spacca

----------

## .:chrome:.

 *starise wrote:*   

> Uhmm... sicuro? io proprio un paio di giorni fa ho ricompilato il kernel e ho letto su un howto del wiki (accidenti a me che non riesco a ritrovarlo!) che è un opzione utile da selezionare per aumentare le prestazioni, quindi l'ho inserita! Fino ad ora però nessun problema.  

 

c'è scritto nell'help della configurazione del kernel.

mi fido di quello e prendo sempre per buono quello che scrivono lì  :Wink: 

----------

## silvius

Ho avuto un pò di problemi alla prima ricompilazione del kernel dopo aggiornamento al gcc, e di preciso:

* al boot vari snd_hda_intel ( lib/......./event.ko ) invalid module format

* X aveva dei problemi con i moduli nvidia....

alla fine ho dovuto ricompilare tutti i vari pacchetti alsa ( con nuovo gcc ) e pacchetti nvidia, più altri piccoli pacchetti che a mano a mano escono fuori.

Ho disabilitato nel kernel il REGPARM, come suggerito in questo post.

Prima di ricompilare i pacchetti avevo dato un emerge -e system senza risolvere, ma forse conveniva dare fin dall' inizio un emerge -e world, visto che ogni tanto esce qualcosa.

Ho risolto nel modo corretto, i motivi di tutto questo sono dovuti all' aggiornameto del gcc ? ( Ho seguito la guida in inglese per l' upgrade)

Saluto

----------

## nick_spacca

 *silvius wrote:*   

> Ho avuto un pò di problemi alla prima ricompilazione del kernel dopo aggiornamento al gcc, e di preciso:
> 
> * al boot vari snd_hda_intel ( lib/......./event.ko ) invalid module format
> 
> * X aveva dei problemi con i moduli nvidia....
> ...

 

No, quello che ti è successo è normale, in quanto tu cercavi di utilizzare dei moduli compilati col vecchio gcc (alsa&nvidia..) inserendoli in un kernel compilato col gcc4.1...

per l'emerge world, mi fido di quello che dice k.gothmog (che ne sa sicuramente + di me...) anche perche mi torna logicamente il ragionamento (ed anche un po perché mi fa una fatica immensa ricompilare tutto   :Laughing:  )

----------

## silvius

 *nick_spacca wrote:*   

> 
> 
> No, quello che ti è successo è normale, in quanto tu cercavi di utilizzare dei moduli compilati col vecchio gcc (alsa&nvidia..) inserendoli in un kernel compilato col gcc4.1...
> 
> per l'emerge world, mi fido di quello che dice k.gothmog (che ne sa sicuramente + di me...) anche perche mi torna logicamente il ragionamento (ed anche un po perché mi fa una fatica immensa ricompilare tutto   )

 

Anch' io mi fido di k.gothmog, ma se uno ha dei moduli deve ricompilarli, sicuramente è inutile ricompilare il mondo, ma per non saper ne leggere ne scrivere forse nella guida avranno pensato: << " facciamo ricompilare tutto, almeno non ci saranno centinaia di post che chiedono cosa fare " >> ( il mio compreso )

Saluto

----------

## gamberetto

 *Cazzantonio wrote:*   

> [...]mentre "Optimize for size" temo di averla abilitata... è grave?   Devo essere sincero che non ho idea di cosa faccia ne di quando la posso avere abilitata ma non mi ha mai dato problemi  

 

Dalla guida in linea del kernel (tasto "?") si evince che "Optimize for size" passa al compilatore l'opzione -Os anziché -O2.

----------

## .:chrome:.

ragazzi sono commosso. grazie per la fiducia

 *silvius wrote:*   

> ma se uno ha dei moduli deve ricompilarli, sicuramente è inutile ricompilare il mondo, ma per non saper ne leggere ne scrivere forse nella guida avranno pensato: << " facciamo ricompilare tutto, almeno non ci saranno centinaia di post che chiedono cosa fare " >> ( il mio compreso )

 

ragionamento corretto, ma quello che ti frega è che i moduli davvero importanti non vengono compilati.

mi spiego: poniamo tu faccia un emerge -e world. tra tutta la roba che viene ricompilata c'è anche il kernel, ma come ben sai il kernel viene solo spacchettato, non viene lanciato il make.

...e questa è la cosa grave, perché ci sono alcuni casi in cui il compilatore può produrre moduli di formato sballato, come è stato segnalato qualche post più in alto

quando si cambia compilatore bisognerebbe sempre ricompilare il kernel, per sicurezza.

[OT]: oggi sono usciti i nuovi linux-headers

secondo me sarebbe buona cosa ricompilare anche glibc, dato che sono compilate proprio su di essi

EDIT: rettifico: bisogna ricompilare glibc

----------

## makoomba

francamente non capisco questo ostinarsi nel non voler seguire la guida ufficiale.

 *gcc wrote:*   

> The C++ application binary interface (ABI) consists of two components: the first defines how the elements of classes are laid out, how functions are called, how function names are mangled, etc; the second part deals with the internals of the objects in libstdc++. Although we strive for a non-changing ABI, so far we have had to modify it with each major release. If you change your compiler to a different major release you must recompile all libraries that contain C++ code. If you fail to do so you risk getting linker errors or malfunctioning programs. Some of our Java support libraries also contain C++ code, so you might want to recompile all libraries to be safe.

 

 *wolf31o2 wrote:*   

> Here's the thing... revdep-rebuild will *not* work because they changed the ABI in subtle ways without a .so bump. This means that things will break, though only a few things. The only truly *safe* method is to use emerge -e system to upgrade your toolchain, then emerge -e world, to update your userland. You *could* skip the emerge -e world and just let things recompile on their own, but there's still the possibility of bugs being introduced because of this. To be honest, the revdep-rebuild option should have never been mentioned for the 3.3->3.4 upgrade, except that it is actually valid in that case. Preferable, would have been to force a complete recompile, like for 4.1, with 3.3->3.4 also.
> 
> The only real safe option is a rebuild of system, then world. Feel free to ignore me, though. It's your system. However, we don't just make these recommendations to make them. We have good reason.

 

ora, pur non essendo un dev c++ e con tutto il dovuto rispetto per le opinioni personali di altri utenti, penso che quando gli autori di gcc e il leader releng di Gentoo insistono nel dire che una ricompilazione del sistema è l'unica "safe option" nel caso di switch tra major versions del compilatore, gli utenti non dovrebbero porsi il problema e seguire la guida.

----------

## Luca89

 *makoomba wrote:*   

> ...

 

Ma se i sviluppatori Gentoo ti dicono che per aggiornare le glibc occorre buttarsi da un ponte, tu ti butti da un ponte? Va bene che i sviluppatori consigliano di riemergere il mondo, io perÃ² non l'ho mai fatto ne da 3.3 a 3.4 e ne da 3.4 a 4.1, i miei 3 PC sono ancora vivi e vegeti. PuÃ² essere che sbaglio, perÃ² secondo me non bisogna prendere per oro colato tutto quello che viene detto dagli sviluppatori, sono sicuramente piÃ¹ competenti di me, ma questo non vuol dire che devo per forza fare ogni cosa che suggeriscono loro.

----------

## .:chrome:.

 *Luca89 wrote:*   

> ...

 

*

----------

## Kernel78

 *Luca89 wrote:*   

> Ma se i sviluppatori Gentoo ti dicono che per aggiornare le glibc occorre buttarsi da un ponte, tu ti butti da un ponte?

 

Ma se gli sviluppatori ti dicono che un pacchetto è hard masked perchè sofre di gravi instabilità e sconsigliano di usarlo tu lo installeresti su un server di produzione ?

Magari avete conoscenze superiori a quelle degli sviluppatori o siete temerari o siete dei bugs hunters ma io preferisco dare retta a chi ne sa più di me ... soprattutto perchè non sono temerario e preferisco evitare i bug  :Wink: 

----------

## makoomba

@Luca89

il fatto che tu non abbia avuto problemi non implica che la tua scelta sia corretta, così come chi non usa un antivirus non è detto che venga infettato.

francamente il tuo è un ragionamento un pò troppo semplicistico perchè non basta un "a me funziona" per motivare una tesi.

non vuoi ricompilare ? sei padrone di farlo sul tuo sistema e può essere che quando e se ti capiterà un particolare problema, sarai in grado di ricondurlo alla mancata ricompilazione e agirai di conseguenza.

ma molti degli utenti non sarebbero in grado di giungere a questa conclusione e continuare a dare l'idea che, in fondo, la guida ufficiale contenga passi inutili, peraltro in un 3d in sticky che riguarda l'aggiornamento di gcc, non mi pare una scelta saggia.

gli sviluppatori gentoo sono anche quelli che si smandruppano i bugs quando qualcosa va storto e se ritengono che una soluzione sia più safe rispetto ad un'altra, fornendo anche una motivazione, ritengo che gli utenti debbano seguirla.

a titolo personale, aggiungo che nelle distro binarie, il compilatore non cambia *mai* major version.

ora, può essere che k.gothmog sia riuscito ad usare dei pacchetti di FC5 in FC2, ma ciò non implica che 100000 users che facessero lo stesso ragionamento con tutto il software installato otterrebbero il medesimo risultato.

----------

## Luca89

 *Kernel78 wrote:*   

> Ma se gli sviluppatori ti dicono che un pacchetto ï¿½ hard masked perchï¿½ sofre di gravi instabilitï¿½ e sconsigliano di usarlo tu lo installeresti su un server di produzione ?
> 
> Magari avete conoscenze superiori a quelle degli sviluppatori o siete temerari o siete dei bugs hunters ma io preferisco dare retta a chi ne sa piï¿½ di me ... soprattutto perchï¿½ non sono temerario e preferisco evitare i bug 

 

Infatti mica ho detto che bisogna fregarsene totalmente di quello che dicono gli sviluppatori, ma neanche bisogna fare per filo e per segno tutto quello che dicono. Inoltre non vedo perchÃ¨ dire:

 *makoomba wrote:*   

> francamente non capisco questo ostinarsi nel non voler seguire la guida ufficiale. 

 

Ognuno fa le sue scelte, se vuole evitare di compilare tutto, non vedo perchÃ¨ non farlo. Naturalmente a suo rischio e pericolo.

 *makoomba wrote:*   

> ma molti degli utenti non sarebbero in grado di giungere a questa conclusione e continuare a dare l'idea che, in fondo, la guida ufficiale contenga passi inutili, peraltro in un 3d in sticky che riguarda l'aggiornamento di gcc, non mi pare una scelta saggia. 

 

non contiene passi inutili, contiene i passi piÃ¹ "safe" possibili, ma uno puÃ² anche decidere di "rischiare". Tra l'altro ci sono tante esperienze di gente che ha proseguito senza ricompilare nulla, non sono solo io.

----------

## makoomba

Luca89, ci sono commenti in questo 3d piuttosto "ruvidi" in merito alla soluzione proposta dai devs.

a molti utenti non piace per nulla l'idea di ricompilare tutto il sistema *solo* perchè ci vuole molto tempo.

aggiungici la lettura in questo topic di interventi del tipo "ricompilare non serve a nulla" e sono sicuro che coglierai lo spirito del mio intervento.

----------

## yardbird

 *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  :Wink: 

Almeno questo è quello che ho capito della faccenda.

----------

## Dece

 *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  :Smile: 

----------

## .:chrome:.

@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

----------

## makoomba

@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.

----------

## ReDirEct__

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??

----------

## lavish

Fatto il merge del thread di ReDirEct__ ...

----------

## tizio

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

----------

## Cazzantonio

 *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   :Laughing:   :Laughing:   :Embarassed: 

Si lo so che sono un cazzone....   :Embarassed: 

----------

## eolus

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

----------

## mrfree

 *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

----------

## mambro

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:
> ...

 

Ora provo a ricompilare col nuovo gcc qt e kdelibs..

----------

## .:chrome:.

non vedo il nesso con emerge -w world.

ti dice semplicemente che hai installato una versione di qt diversa da quella che si aspetterebbe

----------

## mambro

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   :Very Happy: 

----------

## lopio

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 

```

# 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

```

/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

----------

## .:chrome:.

 *lopio wrote:*   

> ...

 

quale versione di glibc hai installato?

hai provato a controllare con ldd se tutti i riferimenti sono a posto?

----------

## lopio

 *k.gothmog wrote:*   

>  *lopio 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 

```

/usr/lib/libstdc++.so.6 -> /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/libstdc++.so.6.0.3 

```

```

#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

----------

## .:chrome:.

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

----------

## lopio

 *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  

```

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

----------

## piccolotux

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

----------

## randomaze

 *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...

----------

## .:chrome:.

 *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

----------

## piccolotux

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?

----------

## .:chrome:.

 *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

----------

## randomaze

 *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  :Wink: 

----------

## pingoo

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   :Embarassed:  dite che ho fatto un casino? Nel caso alla fine, perché sta ancora compilando,  li riaggiungo al world ??  :Confused: 

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   :Rolling Eyes: 

Bye

----------

## syntaxerrormmm

 *pingoo wrote:*   

> 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

 Mi sembra un altro argomento e ci sarebbe da aprire un altro topic, ma va beh.

La questione è semplice: copi il file .config che si trova nella cartella principale del vecchio kernel nella dir principale di quello nuovo e poi dai:

```
make oldconfig
```

 al posto del classico 'make {menu,x,}config'. Automaticamente ti chiederà cosa scegliere per le nuove opzioni. Poi, classica compilazione del kernel.

Per la prima domanda: credo che il fatto di voler ricompilare glibc e gcc per una seconda volta sia 'necessario': se hai cominciato a ricompilarti il sistema, questa seconda ricompilazione ti assicura che il sistema sia coerente (glibc e gcc, poi, non dovrebbero stare in world).

Ciao.

----------

## randomaze

 *pingoo wrote:*   

> => da idiota ho levato a manina dal file world gcc e glibc e poi ho dato emerge -eav world.

 

Beh più che altro gcc e glibc non hanno bisogno di stare nel file di world, il quale normalmente contiene solo i file che tu hai deciso di installare.

I files come gcc e glibc appartengono al system. Quando tu dai "emerge -e world" si intende "tutti i file contenuti nel file world  e le loro dipendenze compreso il system" (la definizione é imprecisa ma rende l'idea...)

 *Quote:*   

> Posso usare il vecchio config o non posso, come la guida di aggiornamento kernel suggerisce in generale? Non potendo ricompilerei piuttosto il vecchio kernel  

 

Si puoi usare il vecchio .config. In generale basta fare:

```
cd <dir nuovo kernel>

cp <dir vecchio kernel>/.config .

make oldconfig

```

al termine farai make, make menuconfig o quello che preferisci....

----------

## pingoo

 *Quote:*   

> 
> 
> Mi sembra un altro argomento e ci sarebbe da aprire un altro topic, ma va beh. 
> 
> 

 

 :Embarassed:  hai perfettamente ragione

EDIT:  *Quote:*   

> credo che il fatto di voler ricompilare glibc e gcc per una seconda volta sia 'necessario'

 

Il fatto è che sarebbe stata la terza volta  :Wink:  sulla necessità (meglio opportunità?) della seconda sono d'accordo 

 *Quote:*   

> Beh più che altro gcc e glibc non hanno bisogno di stare nel file di world, il quale normalmente contiene solo i file che tu hai deciso di installare.
> 
> I files come gcc e glibc appartengono al system.

 

Infatti era per quello che avevo pensato di levarli però il fatto che ci fossero mi ha insospettito

Riguardo al kernel, il problema è nella differenza di versione, la domanda voleva essere se qualcuno era a conoscenza di problemi particolari nel riutilizzo del config per queste particolari versioni, dato che la guida recita

 *Quote:*   

> Invece non e' consigliato utilizzare questo metodo passando dal 2.6.8 al 2.6.9 ad esempio. In questo caso i cambiamente possono essere tali da non garantire il controllo sulla configurazione.

 

Comunque grazie infinite, mi sorprende ogni volta la vostra disponibilità e la prontezza

----------

## syntaxerrormmm

 *pingoo wrote:*   

>  *Quote:*   credo che il fatto di voler ricompilare glibc e gcc per una seconda volta sia 'necessario' 
> 
> Il fatto è che sarebbe stata la terza volta  sulla necessità (meglio opportunità?) della seconda sono d'accordo

 Ho parlato di necessità nel senso che non è così necessario ricompilarsi tutto world, ma se lo decidi allora è necessario (per ottenere il risultato che vuoi) che vengano compilati anche glibc e gcc. Tutto qui  :Smile: 

Ciao.

----------

## pingoo

 *syntaxerrormmm wrote:*   

>  *pingoo wrote:*    *Quote:*   credo che il fatto di voler ricompilare glibc e gcc per una seconda volta sia 'necessario' 
> 
> Il fatto è che sarebbe stata la terza volta  sulla necessità (meglio opportunità?) della seconda sono d'accordo Ho parlato di necessità nel senso che non è così necessario ricompilarsi tutto world, ma se lo decidi allora è necessario (per ottenere il risultato che vuoi) che vengano compilati anche glibc e gcc. Tutto qui 
> 
> Ciao.

 

Scusa, non intendevo correggere il tuo post, ho scritto così perché leggendo la guida avevo pensato che fosse un dovere ricompilare tutto, poi leggendo nella discussione ho scoperto che c'è chi la pensa diversamente e avrei potuto scegliere.

Grazie e ciao

----------

## syntaxerrormmm

 *pingoo wrote:*   

> Scusa, non intendevo correggere il tuo post

 Non ne ho avuto nemmeno per un attimo l'impressione, tranquillo  :Smile: 

Alla prossima, ciao.

----------

## .:chrome:.

 *pingoo wrote:*   

> da idiota ho levato a manina dal file world gcc e glibc e poi ho dato emerge -eav world

 

glibc e gcc fanno parte di system, quindi non devono trovarsi nel file world, quindi è tutto ok

----------

## pingoo

 *k.gothmog wrote:*   

> glibc e gcc fanno parte di system, quindi non devono trovarsi nel file world, quindi è tutto ok

 

Ok, grazie, credo che il world sarà da ripulire, mi pare addirittura che l'emerge -eav world stia reinstallando ciclicamente gli stessi pacchetti, tipo le kdelibs, avrei dovuto controllare meglio l'output iniziale   :Embarassed:   ma era un po' lunghino... magari t'avessi letto prima di cominciare  :Wink: 

@syntaxerrormmm meglio così  :Wink: 

Per il kernel "risolto". Ciao e grazie

----------

## Onip

@pingoo

alla luce del fatto che avevi nel world due pacchetti che non dovrebbero esserci io to consiglierei i controllarlo ed, eventualmente, dargli una sfoltita.

Byez

p.s. s'è n'è già parlato nel forum, se cerchi un po' dovresti trovare qualche informazione utile

//EDIT: post contemporaneo...

----------

## pingoo

 *Onip wrote:*   

> @pingoo
> 
> alla luce del fatto che avevi nel world due pacchetti che non dovrebbero esserci io to consiglierei i controllarlo ed, eventualmente, dargli una sfoltita.
> 
> Byez
> ...

 

Lo farò sicuramente (ho cercato e in effetti ci sono diversi post che ne parlano) dopo che avrà terminato con emerge -e world (sono ancora fiducioso) e mi sarò ripreso dallo stress causatomi  :Wink: 

Ciao

----------

## pingoo

Ops, l'ultimo post è il mio... Vabbè per completare quanto sopra, il sistema credo sia coerente, grazie a emersioni di sistemi e mondi e all'utilizzo incrociato di dep -w, emerge --depclean e revdep-rebuild vari

Solo mi sorge un dubbio, oggi l'emerge world mi ha chiesto di aggiornare le glibc, ho cercato chiaramente nel forum ma non ho trovato nulla che mi specificasse cosa dovessi fare di preciso da cui ne ho dedotto che non dovessi fare nulla di particolare. Ora però noto

```

# equery d gcc-3.4.4-r1

[ Searching for packages depending on gcc-3.4.4-r1... ]

sys-libs/glibc-2.4-r4

# equery d gcc-4.1.1

[ Searching for packages depending on gcc-4.1.1... ]

# gcc-config -l

 [1] i686-pc-linux-gnu-3.4.4

 [2] i686-pc-linux-gnu-3.4.4-hardened

 [3] i686-pc-linux-gnu-3.4.4-hardenednopie

 [4] i686-pc-linux-gnu-3.4.4-hardenednopiessp

 [5] i686-pc-linux-gnu-3.4.4-hardenednossp

 [6] i686-pc-linux-gnu-4.1.1 *

```

 Volevo rimuovere gcc-3.4.4-r1 credendo che non fosse più utile invece scopro quanto sopra, quasi potessi piuttosto rimuovere gcc-4.1.1   :Question: 

Dove ho sbagliato???

Grazie

----------

## cloc3

 *pingoo wrote:*   

> 
> 
> # equery d gcc-3.4.4-r1
> 
> 

 

Cosa deduci da questo comando?

Io farei piuttosto:

```

s939 ~ # equery l gcc

[ Searching for package 'gcc' in all categories among: ]

 * installed packages

[I--] [ ~] sys-devel/gcc-3.4.6-r2 (3.4)

[I--] [ ~] sys-devel/gcc-4.1.1-r1 (4.1)

...

```

da cui ricavo le versioni di gcc esistenti nel mio sistema.

Il comando `gcc-config -L` utilizza i contenti di /etc/env.d/gcc/, che a loro volta rispecchiano il contenuto di /usr/lib/gcc/<CHOST>-pc-linux-gnu .

Normalmente, il sistema mantiene costantemente una versione del gcc precedente (un po come accade per le versioni di kde), per consentire l'eventuale compilazione di software non compatibile con gcc-4.1*.

Secondo me, è conveniente adeguarsi, ma non è scorretto rimouvere a mano il vecchio gcc e ripulire le cartelle che dovessero sfuggire alla pulizia.

----------

## newred

Ciao ha tutti....

Ieri ho fatto un emerge di tutto il sistema e mi è stato restituito questo errore per gcc

 *Quote:*   

> -Wold-style-definition -Wmis                     sing-format-attribute    -DHAVE_CONFIG_H -I. -I. -I/var/tmp/portage/gcc-4.1.1/wo                     rk/gcc-4.1.1/gcc -I/var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/gcc/. -I/var/tmp/po                     rtage/gcc-4.1.1/work/gcc-4.1.1/gcc/../include -I/var/tmp/portage/gcc-4.1.1/work/                     gcc-4.1.1/gcc/../libcpp/include     /var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/gc                     c/c-common.c -o c-common.o
> 
> In file included from /usr/include/signal.h:33,
> 
>                  from /usr/include/sys/wait.h:30,
> ...

 

Che devo fare??....

----------

## pingoo

 *cloc3 wrote:*   

>  *pingoo wrote:*   
> 
> # equery d gcc-3.4.4-r1
> 
>  
> ...

 Scusa, non ne deduco che, almeno nel mio sistema, le glibc dipendono dal gcc-3.4.4-r1 e perciò non posso rimuovere tale versione di gcc? *Quote:*   

> [ Searching for packages depending on gcc-3.4.4-r1... ] 

 

Se sì. perché tale dipendenza?

 *Quote:*   

> 
> 
> Io farei piuttosto:
> 
> ```
> ...

  Ecco ciò che ottengo

```
[I--] [  ] sys-devel/gcc-3.4.4-r1 (3.4)

[I--] [ -] sys-devel/gcc-4.1.1 (4.1)

[I--] [  ] sys-devel/gcc-config-1.3.13-r4 (0)

```

 *Quote:*   

> 
> 
> Il comando `gcc-config -L` utilizza i contenti di /etc/env.d/gcc/, che a loro volta rispecchiano il contenuto di /usr/lib/gcc/<CHOST>-pc-linux-gnu .
> 
> Normalmente, il sistema mantiene costantemente una versione del gcc precedente (un po come accade per le versioni di kde), per consentire l'eventuale compilazione di software non compatibile con gcc-4.1*.
> ...

 

Ok, grazie mille per la spiegazione (anche se l'avevo capito da qualche commento  :Wink:  ) però nella stessa guida di aggiornamento del gcc si dice, dopo aver "aggiornato" system e world con -e: *Quote:*   

> It is safe to remove the older GCC version at this time. If you feel the need, please issue the following command (as usual, substitute =sys-devel/gcc-3.4* with the version you want to uninstall):# emerge -aC =sys-devel/gcc-3.4*

 

cosa che non mi sembra di poter fare dato l'output di "equery d gcc-3..." visto sopra. Ho capito male qualcosa?

----------

## Scen

 *pingoo wrote:*   

>  *cloc3 wrote:*    *pingoo wrote:*   
> 
> # equery d gcc-3.4.4-r1
> 
>  
> ...

 

Perchè equery non è uno strumento "infallibile"  :Rolling Eyes:  Se dai il comando

```

equery d gcc

```

ti restituirà comunque glibc, però, se leggi bene la guida di aggiornamento di gcc, capirai che, dopo aver ricompilato glibc con la versione 4 di gcc, glibc non dipende più da gcc-3*, in quanto alla fine ti dicono che puoi rimuoverlo (gcc-3*)!

 *pingoo wrote:*   

> 
> 
> nella stessa guida di aggiornamento del gcc si dice, dopo aver "aggiornato" system e world con -e: *Quote:*   It is safe to remove the older GCC version at this time. If you feel the need, please issue the following command (as usual, substitute =sys-devel/gcc-3.4* with the version you want to uninstall):# emerge -aC =sys-devel/gcc-3.4* 
> 
> cosa che non mi sembra di poter fare dato l'output di "equery d gcc-3..." visto sopra. Ho capito male qualcosa?

 

Vai tranquillo, se non hai pacchetti che si rifiutano di compilarsi con gcc-4 (es. qemu), rimuovilo senza problemi  :Cool: 

----------

## newred

 *newred wrote:*   

> Ciao ha tutti....
> 
> Ieri ho fatto un emerge di tutto il sistema e mi è stato restituito questo errore per gcc
> 
>  *Quote:*   -Wold-style-definition -Wmis                     sing-format-attribute    -DHAVE_CONFIG_H -I. -I. -I/var/tmp/portage/gcc-4.1.1/wo                     rk/gcc-4.1.1/gcc -I/var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/gcc/. -I/var/tmp/po                     rtage/gcc-4.1.1/work/gcc-4.1.1/gcc/../include -I/var/tmp/portage/gcc-4.1.1/work/                     gcc-4.1.1/gcc/../libcpp/include     /var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/gc                     c/c-common.c -o c-common.o
> ...

 

Qualche aiuto anche per me.....  :Crying or Very sad: 

----------

## Scen

 *newred wrote:*   

> Qualche aiuto anche per me..... 

 

Hai provato a seguire per filo e per segno questa guida: http://www.gentoo.org/doc/it/gcc-upgrading.xml ?

Non è che hai effettuato lo switch a gcc-4 senza ricompilare prima effettuare le operazioni essenziali (fix_libtool_files.sh && emerge -1 libtool ) ?

----------

## newred

No ho fatto solo un emerge -u -d -n world dopo aver finito l'installazione ed aggiunto samba

Come profilo ho impostato il 2006.1 server...

Ho anche rimosso un pacchetta che era segnalato come bloched... dovrebbe essere pam-login..

L'installazione l'ho fatta dal cd minimal e scaricando stage3 586 e portage...

Credo che il 4.1.1 fosse già installato di base... io non ho modificato nulla ....

----------

## Scen

 *newred wrote:*   

> Come profilo ho impostato il 2006.1 server...

 

Stai utilizzando una macchina server? Questo profilo è marcato come "testing" (difatti se imposti questo profilo, ad ogni emerge mi pare ti venga segnalato con un bel warning, e ti viene consigliato di passare al profilo "hardened").

Posta l'output di

```

emerge --info

```

così capiamo che tipo di installazione hai.

Comunque:

```

[...]

/usr/include/bits/sigset.h:118: internal compiler error: Segmentation fault 

[...]

The bug is not reproducible, so it is likely a hardware or OS problem. 

[...]

```

L'errore sembra abbastanza tosto, prova a verificare che la memoria RAM non abbia problemi, di avere spazio sufficiente su disco, che il processore sia raffreddato correttamente.

----------

## pingoo

 *Scen wrote:*   

> 
> 
> Perchè equery non è uno strumento "infallibile"  Se dai il comando
> 
> ```
> ...

  Infatti, il problema era capire chi fosse più affidabile o se più semplicemente avessi sbagliato qualcosa io  :Smile: 

 *Quote:*   

> Vai tranquillo, se non hai pacchetti che si rifiutano di compilarsi con gcc-4 (es. qemu), rimuovilo senza problemi 

 

Grazie, ho rimosso, per un po' mi terrò da parte il pkg fatto con quickpkg e emerge --depclean e revdep-rebuild stanno pure buoni

Credo che il problema fosse che, per come l'ho utilizzato, equery non funziona con la versione del pacchetto, tant'è che

```
$ equery d sys-devel/gcc

[ Searching for packages depending on sys-devel/gcc... ]

sys-libs/glibc-2.4-r4

sys-libs/libstdc++-v3-3.3.4
```

mentre

```
equery d sys-devel/gcc-4.1.1
```

 non restituisce nulla, neanche con "=" davanti. Ho provato pure con mozilla-firefox, stessa cosa, poi mi rivedo con maggiore attenzione il man di equery, al momento non vedo l'errore.

Grazie a tutti,

ciao

EDIT: e la cosa strana è che prima equery d gcc-3.4.4-r1 sembrava corretto come uso di equery, mi ha restituito le glibc! Boh!

----------

## newred

 *Scen wrote:*   

>  *newred wrote:*   Come profilo ho impostato il 2006.1 server... 
> 
> Stai utilizzando una macchina server? Questo profilo è marcato come "testing" (difatti se imposti questo profilo, ad ogni emerge mi pare ti venga segnalato con un bel warning, e ti viene consigliato di passare al profilo "hardened").
> 
> Posta l'output di
> ...

 

Ciao avrei voluto postare il risultato dell'emerge , ma ora c'è un problema più grave..... non riesce più ad avviare net.lo...

Sono appena all'inizio con gentoo e adesso non so più dove sbattere la testa... mi dice che non riesce a caricare il modulo del dhcp..... ma io non uso il dhcp!!

----------

## newred

 *Scen wrote:*   

>  *newred wrote:*   Come profilo ho impostato il 2006.1 server... 
> 
> Stai utilizzando una macchina server? Questo profilo è marcato come "testing" (difatti se imposti questo profilo, ad ogni emerge mi pare ti venga segnalato con un bel warning, e ti viene consigliato di passare al profilo "hardened").
> 
> Posta l'output di
> ...

 

Ciao.. finalmente la rete funziona...

Ecco il risultato di emerge

 *Quote:*   

> Portage 2.1.1-r1 (default-linux/x86/2006.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.17-ge                                                                             ntoo-r8 i586)
> 
> =================================================================
> 
> System uname: 2.6.17-gentoo-r8 i586 AMD-K6(tm) 3D processor
> ...

 

----------

## newred

Nessuno a qualche idea....

----------

