¿Cómo instalo la extensión GnuPG de PHP?

2

Tengo problemas para instalar una extensión nativa de PHP: GnuPG. Esto es lo que he intentado hasta ahora.

Primero:

sudo port install gpgme
sudo pecl install gnupg

La salida del segundo comando termina así:

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

Entonces, intenté instalar manualmente, adivinando algunos valores basados en la salida de port contents gpgme y port contents gnupg ...

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

Ay, no hay suerte. Esto termina así:

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

Luego intenté aumentar CFLAGS así:

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

Esto devuelve un código de salida distinto de cero, pero luego make falla. Aquí está el final de esa salida:

/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

Sospecho que mi --with-gnupg arg de alguna manera arruinó la vinculación, porque veo -L/opt/local/include/lib en la salida de ese make ejecutado.

Ahí es donde estoy atrapado. Siento que me estoy esforzando demasiado o simplemente voy por el camino equivocado.

Estoy usando Snow Leopard (v10.6.8). El programa de línea de comandos de PHP que estoy usando vino con MAMP 2.1.0.

    
pregunta Adam Monsen 02.08.2012 - 01:59

1 respuesta

1

Consulte enlace (un texto extenso explicando cómo parchear & compilar gnupg desde la fuente)

    
respondido por el Ciphe 29.04.2014 - 19:07

Lea otras preguntas en las etiquetas