Avanti Indietro Indice

7. Compilare programmi C++.

Libg++ usa alcune parti della libreria matematica, come pure il collegamento a libm. Da momemnto che la libg++ esistente è stata compilata con la propria precedente libreria, è necessario ricompilare libg++ con glibc per avere una copia binaria. L'ultima versione sorgente per libg++ insieme con la versione binaria compilata con glibc (per x86) può essere trovata presso: ftp://ftp.yggdrasil.com/private/hjl/.

7.1 Installare libg++ per glibc configurata per test.

Avendo installato glibc come libreria di test, è necessario installare i file nella directory dove risiede glibc (che è /usr/i486-linuxglibc2 per gli esempi delle sezioni precedenti). Installando da un pacchetto in formato binario (cosa che l'autore consiglia in quanto non è mai riuscito a compilare con successo libg++ in questo modo), è necessario estrarre i file in una directory temporanea e spostare tutti i file da usr/lib/ in <directory di installazione>/lib/, da usr/include/ in <directory di installazione>/include/ (ricordarsi prima di rimuovere il link include/g++!), ed infine da usr/bin/ in <directory di installazione>/bin/.

7.2 Installare libg++ per glibc configurata come primaria.

Avendo installato glibc come libreria primaria e volendo mantenere la possibilità di compilare programmi con la vecchia versione di libc, è necessario spostare - prima della nuova installazione - tutti i file nella directory di libc. Probabilmente il modo più semplice per farlo è di installare una copia di libg++ compilata per libc5 come nella sezione precedente, e poi installare normalmente glibc.

7.3 Compilare programmi C++ con libc non primaria.

Per compilare programmi C++ con una libreria non primaria libc, è necessario specificare la directory di include g++ che negli esempi precedenti è /usr/i486-linuxglibc2/include/g++ per l'installazione di glibc come libreria di test e /usr/i486-linuxlibc5/include/g++ per l'installazione di glibc come libreria primaria. Normalmente si raggiunge questo scopo impostando la variabile $CXXFLAGS:

 CXXFLAGS = -nostdinc -I/usr/i486-linuxglibc2/include -I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include -I/usr/i486-linuxlibc5/include/g++ -b i486-linuxglibc2 


Avanti Indietro Indice