# PFEXTLIB Rebuild Report ## Obiettivo Ricompilare le librerie PFEXTLIB-1.2 con `libstdc++.so.5` per compatibilità con SLES 8. ## Problema SLES 8 ha solo `libstdc++.so.5` (GCC 3.2.3), ma la libreria Xerces precompilata richiedeva `libstdc++.so.6` (GCC 4.x+), causando incompatibilità. ## Soluzione Creato ambiente Docker basato su CentOS 3.9 i386 con GCC 3.2.3 per ricompilare tutte le librerie PFEXTLIB. ## Librerie Compilate | Libreria | Versione | Dimensione | Dipendenze Verificate | |----------|----------|------------|----------------------| | cppunit | 1.10.2 | 1.9M | ✅ libstdc++.so.5 | | fftw | 3.0.1 | 610K | ✅ libstdc++.so.5 | | hdf5 | 1.6.2 | 975K | ✅ libstdc++.so.5 | | xerces-c | 2.1.0 | 3.2M | ✅ libstdc++.so.5 | ## Ambiente Build - **OS**: CentOS 3.9 i386 (archive.kernel.org/centos-vault/3.9/) - **Compiler**: GCC 3.2.3-59 - **glibc**: 2.3.2-95.50 - **Build System**: autoconf 2.57, automake 1.6.3, libtool 1.4.3 - **47 RPM packages** verificati e installati ## Artefatti Prodotti ### 1. Docker Image `centos39-pfextlib:latest` - Ambiente completo per rebuild ### 2. Script di Build - `build-docker-image.sh` (307 righe) - Crea immagine Docker - `build-libraries.sh` - Compila ed estrae librerie - Script individuali per ogni libreria con cleaning ### 3. Archivio Finale **PFEXTLIB-1.2-centos39-libs.tar.gz** (2.1M) Struttura: ``` usr/local/PFEXTLIB-1.2/ ├── cppunit-1.10.2/lib/ ├── fftw-3.0.1/lib/ ├── hdf5-1.6.2/lib/ └── xerces-c-src2_1_0/lib/ ``` ## Note Tecniche - Tutte le librerie linkate dinamicamente contro `libstdc++.so.5` - Compatibili con SLES 8 (GCC 3.2.3) - Build riproducibile tramite container Docker - Pulizia sorgenti prima di ogni build (make clean, rm lib/*, rm bin/*) ## Data 3 novembre 2025