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.