Après une configuration réussie, effectuez des sorties avec snipped
gclosure.c:29:17: fatal error: ffi.h: No such file or directory compilation terminated.
J’ai libffi installé et localiser ffi.h donne:
/home/luca/gcc4.6/gcc-4.6.0/libffi/include/ffi.h.in /usr/include/x86_64-linux-gnu/ffi.h /usr/share/doc/ghc-doc/html/users_guide/ffi.html /usr/share/doc/libffi5/html/Using-libffi.html
Si vous avez un système d’exploitation Linux basé sur Debian avec apt-get
:
sudo apt-get install libffi-dev
Avec un système d’exploitation Redhat-base:
yum install libffi-devel
Lorsque vous utilisez libffi 3.0.9 à partir du code source, le fichier include/Makefile.in
installe les include/Makefile.in
dans le ${PREFIX}/lib/libffi-3.0.9/include directory
. Je suis sûr qu’il y a une raison merveilleuse pour cela, mais cela m’ennuie.
Cette ligne le corrige, lors de la compilation de libffi:
/bin/perl -pe 's#^includesdir = .*#includesdir = \@includedir\@#' -i include/Makefile.in
L’ ${PREFIX}/include
sera maintenant installée dans ${PREFIX}/include
, qui est /usr/local/include
pour moi.
Ma recette complète est:
cd /var/tmp rm -rf libffi-3.0.9 untgz /usr/local/src/utils/libffi-3.0.9.tar.gz cd libffi-3.0.9 /bin/perl -pe 's#^AM_CFLAGS = .*#AM_CFLAGS = -g#' -i Makefile.in /bin/perl -pe 's#^includesdir = .*#includesdir = \@includedir\@#' -i include/Makefile.in ./configure --prefix=/usr/local \ --includedir=/usr/local/include gmake gmake install
Résolu en définissant manuellement LIBFFI_CFLAGS pour l’emplacement de ffi.h dans configure
Vérifiez votre version de GCC et notez cette entrée dans l’archive Debian Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523869
C’était la solution finale à mon problème particulier (il ressemblait exactement à ce que vous rapportez, mais ne pouvait pas être résolu avec la solution ci-dessus) … mon problème n’avait rien à voir avec LIBFFI.
Un vieux fil, mais de toute façon …
Après avoir mis les fichiers requirejs à un endroit où ils pourraient être trouvés, je l’ai fait fonctionner:
cp /usr/include/x86_64-linux-gnu/ffi* /usr/local/include/ cp /usr/lib/libffi.so /usr/local/lib/