2 votes

Comment installer l'extension PHP GnuPG ?

J'ai des difficultés à installer une extension native PHP : GnuPG. Voici ce que j'ai essayé jusqu'à présent.

Premièrement :

sudo port install gpgme
sudo pecl install gnupg

La sortie de la deuxième commande se termine ainsi :

checking for gnupg support... yes, shared
checking for gnupg files in default path... not found
configure: error: Please reinstall the gpgme distribution
ERROR: `/private/tmp/pear/temp/gnupg/configure' failed

J'ai donc essayé de l'installer manuellement, en devinant certaines valeurs basées sur les résultats de l'application port contents gpgme y port contents gnupg ...

pecl download gnupg
phpize
./configure --with-gnupg=/opt/local/include --with-libdir=/opt/local/lib

Hélas, rien n'y fait. Cela se termine ainsi :

checking for gnupg support... yes, shared
checking for gpgme_check_version in -lgpgme... no
configure: error: wrong gpgme lib version or lib not found

J'ai ensuite essayé d'augmenter CFLAGS de la manière suivante :

CFLAGS="-L/opt/local/lib" ./configure --with-gnupg=/opt/local/include

Cela renvoie un code de sortie non nul, mais ensuite make ne fonctionne pas. Voici la fin de cette sortie :

/bin/sh /tmp/gnupg-1.3.2/libtool --mode=link cc -DPHP_ATOM_INC -I/tmp/gnupg-1.3.2/include -I/tmp/gnupg-1.3.2/main -I/tmp/gnupg-1.3.2 -I/Applications/MAMP/bin/php/php5.3.6/include/php -I/Applications/MAMP/bin/php/php5.3.6/include/php/main -I/Applications/MAMP/bin/php/php5.3.6/include/php/TSRM -I/Applications/MAMP/bin/php/php5.3.6/include/php/Zend -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext/date/lib -I/opt/local/include  -DHAVE_CONFIG_H  -L/opt/local/lib   -o gnupg.la -export-dynamic -avoid-version -prefer-pic -module -rpath /tmp/gnupg-1.3.2/modules  gnupg.lo gnupg_keylistiterator.lo -Wl,-rpath,/opt/local/include/lib -L/opt/local/include/lib -lgpgme
cc ${wl}-flat_namespace ${wl}-undefined ${wl}suppress -o .libs/gnupg.so -bundle  .libs/gnupg.o .libs/gnupg_keylistiterator.o  -L/opt/local/lib -L/opt/local/include/lib /opt/local/lib/libgpgme.dylib /opt/local/lib/libassuan.dylib /opt/local/lib/libgpg-error.dylib /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib  -Wl,-rpath -Wl,/opt/local/include/lib
ld: warning: directory not found for option '-L/opt/local/include/lib'
ld: duplicate symbol _gnupg_keylistiterator_class_entry in .libs/gnupg_keylistiterator.o and .libs/gnupg.o for architecture x86_64
collect2: ld returned 1 exit status
make: *** [gnupg.la] Error 1

Je soupçonne que mon --with-gnupg arg s'est en quelque sorte trompé de lien, car je vois -L/opt/local/include/lib dans le résultat de cet échec make courir.

C'est là que je suis bloqué. J'ai l'impression d'en faire trop ou de me tromper de chemin.

J'utilise Snow Leopard (v10.6.8). Le programme en ligne de commande PHP que j'utilise est livré avec MAMP 2.1.0.

1voto

twengg Points 31

Voir http://measure9.varkel.net/2013/10/building-gnupg-for-php-5-5-on-osx/ (un long texte expliquant comment patcher et compiler gnupg à partir des sources)

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X