La bibliothèque Libffi fournit une interface de programmation portable et de haut niveau pour diverses conventions d'appel. Cela permet au programmeur d'appeler des fonctions par la description de leur interface d'appel à l'exécution.
Comme GMP, libffi est construite avec des optimisations
spécifiques au processeur utilisé. Si vous construisez pour un
autre système, modifiez la valeur du paramètre --with-gcc-arch=
dans la commande
suivante pour spécifier le nom de l'architecture implémentée par
le CPU de ce système. Dans le cas contraire, toutes les
applications qui se lient à libffi afficheront des erreurs de
type opération illégale.
Préparez la compilation de libffi :
./configure --prefix=/usr \ --disable-static \ --with-gcc-arch=native \ --disable-exec-static-tramp
Voici la signification de l'option de configuration :
--with-gcc-arch=native
Vérifie que GCC active les optimisations pour le système actuel. Si l'option n'est pas spécifiée, il essaiera de deviner le système et le code généré peut ne pas être correct pour certains systèmes. Si le code généré est copié du système actuel vers un système avec moins de fonctionnalités, utilisez ce dernier dans le paramètre. Pour des détails concernant les types de systèmes alternatifs, voyez les options x86 dans le manuel de GCC.
--disable-exec-static-tramp
Désactivez la prise en charge du trampoline statique. C'est une nouvelle fonctionnalité de libffi, mais certains paquets de BLFS (notamment GJS) n'ont pas encore été adaptés.
Compilez le paquet :
make
Pour tester les résultats, lancez :
make check
Installez le paquet :
make install