GMP est une bibliothèque pour faire de l'arithmétique en précision arbitraire sur les entiers, les nombres rationnels et les nombres flottants.
Si vous compilez ce paquet sur un processeur différent de celui
sur lequel vous envisagez d'exécuter le système CLFS, vous devez
remplacer les enveloppes config.guess
et config.sub
de GMP par celles d'origine. Cela
empêchera GMP de s'optimiser pour le mauvais processeur. Vous
pouvez faire cette modification avec la commande suivante :
mv -v config{fsf,}.guess mv -v config{fsf,}.sub
Préparez la compilation de GMP :
CC="gcc -isystem /usr/include ${BUILD64}" \ CXX="g++ -isystem /usr/include ${BUILD64}" \ LDFLAGS="-Wl,-rpath-link,/usr/lib64:/lib64 ${BUILD64}" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib64 \ --enable-cxx \ --docdir=/usr/share/doc/gmp-6.1.2
Compilez le paquet :
make
Construisez la documetation HTML :
make html
Testez les résultats :
make check
Installez le paquet :
make install
Installez la documentation :
make install-html
Créez le fichier d'entêtes 64 bits :
mv -v /usr/include/gmp{,-64}.h
Finalement, créez un morceau d'entête à la place des originaux :
cat > /usr/include/gmp.h << "EOF" /* gmp.h - Stub Header */ #ifndef __STUB__GMP_H__ #define __STUB__GMP_H__ #if defined(__x86_64__) || \ defined(__sparc64__) || \ defined(__arch64__) || \ defined(__powerpc64__) || \ defined (__s390x__) # include "gmp-64.h" #else # include "gmp-32.h" #endif #endif /* __STUB__GMP_H__ */ EOF