Newsgroup: it.comp.os.linux.development
Titolo: g++-0.3

Salve a tutti,
Qualcuno ha provato ad usare il compilatore C++ di gcc-3.0  ?
Io l'ho scaricato, compilato ed istallato, funziona abbastanza 
bene ed e' piu' standard compliant del 2.96 incluso in molte 
distribuzioni (Io ho da pochissimi giorni aggiornato la mia 
RedHat alla versione 7.2)
Tra l'altro il 2.96 non e' neanche annoverato tra le release ufficiali
del gcc nel sito 
gcc.gnu.org
, dove la serie 2.9x si ferma a 2.95.
Ad ogni modo, la "svolta epocale" nel passaggio da 2.9x a 3.0 consiste
in un diverso "name mangling", rendendo impossibile linkare tra di
loro due oggetti compilati con due compilatori diversi.
(e qui credo che la Gnu si sia data la zappa sui piedi)
Insomma, finora sono riuscito a usare g++-3.0 solo per compilare
programmi stand-alone o ricompilando eventuali altre librerie c++ 
da linkare con i miei programmi (per esempio le librerie per accedere
a PostgreSql).
Tra l'altro ogni volta devo fare i salti mortali modificando PATH
e LD_LIBRARY_PATH per usare librerie ed eseguibili allineati.
D'altro canto non sono ancora riuscito a trovare una distribuzione
Linux alternativa basata su gcc-3.0. 
Veniamo al dunque:
In questi giorni ho dato un occhiata al Kdevelop 2.0, fornito con
la RH7.2 e volevo provare a farci qualche esperimento (finora avevo 
usato g++ solo per applicazioni client/server senza GUI).
All'inizio il configure falliva dicendo di non trovare le libqt-2.2.2 o 
superiori (quando con la RH7.2 ci sono le libqt-2.3.1).
In realta' ho scoperto che provava a linkare libqt ma non vi trovava i 
simboli che cercava, avendo utilizzato il g++-3.0 per compilare il
programma di test ma essendo le libqt compilate col g++-2.96.
In teoria basterebbe ricompilare le librerie qt (e tutte le altre librerie
c++ necessarie) col compilatore nuovo e spostarle su una directory separata
(tipo /usr/local/gcc-3.0/lib/libqt-2.3.1, come ho fatto con le librerie
per postgres) 
Ma in questo caso, poiche' Kdevelop fa tutto da solo (crea lui 
configure.in
 
ecc) Non saprei come fargli usare le mie librerie invece di quelle standard.
L'alternativa sarebbe ricompilare TUTTO con il compilatore g++-3.0, ma
temo che non sia una cosa da poco, (altrimenti l'avrebbero gia' fatto ;).
Insomma mi ritrovo con un compilatore g++-3.0 molto piu' standard compliant
di quello incluso nelle distribuzioni ma praticamente inutilizzabile per
applicazioni particolarmente complesse...
Dovremo aspettare la RedHat 8.0 per usarlo ?
(Tra l'altro spulciando nelle varie ML, sembra che nemmeno la Debian abbia 
intenzione di passare a gcc-3 nelle prossime distribuzioni...)
Mi chiedevo cosa ne pensassero gli altri sviluppatori c++ su Linux...
Saluti,
Fabio Lopiano

 Fabio Lopiano

 Qualcuno ha provato ad usare il compilatore C++ di gcc-3.0  ?
io l'ho scaricato e ne sono rimasto molto soddisfatto. L'aderenza allo 
standard e' ottima, ma c'e' da dire che non ho ancora create nessun 
programma particolarmente esteso.
Sono riuscito a compilare tranquillamente il kernel (che ora e' un 
10-15% piu' veloce di quello compilato con gcc 2.9x) ma non ho mai 
sviluppato applicazioni che andassero oltre e quelle console. In 
effetti ho provato con KDevelop e mi da il tuo stesso errore: pero' se 
selezioni "Opzioni -> Impostazioni -> Percorso" trovi una casella di 
testo dove specificare la dir di installazione di Qt e KDE: forse 
potrebbe essere quello che cerchi.
ciao Anto
-- 
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it