मैं GnuPG PHP एक्सटेंशन कैसे स्थापित करूं?


2

मुझे एक PHP देशी एक्सटेंशन स्थापित करने में समस्या हो रही है: GnuPG। यहाँ मैंने अभी तक क्या कोशिश की है।

प्रथम:

sudo port install gpgme
sudo pecl install gnupg

दूसरी कमांड से आउटपुट इस तरह समाप्त होता है:

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

इसलिए, मैंने मैन्युअल रूप से स्थापित करने की कोशिश की, port contents gpgmeऔर आउटपुट के आधार पर कुछ मूल्यों का अनुमान लगा रहा है port contents gnupg...

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

काश, नसीब नहीं। यह इस तरह समाप्त होता है:

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

मैंने तब CFLAGS को बढ़ाने की कोशिश की:

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

यह एक नॉनज़ेरो एग्जिट कोड देता है, लेकिन फिर makeविफल हो जाता है। यहाँ उस आउटपुट का अंत है:

/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

मुझे संदेह है कि मेरे --with-gnupgarg ने किसी तरह लिंकिंग को गड़बड़ कर दिया, क्योंकि मैं -L/opt/local/include/libउस असफल makeरन के आउटपुट में देखता हूं ।

यहीं मैं फंस गया। ऐसा लगता है कि मैं बहुत कठिन रास्ते पर जा रहा हूं या गलत रास्ते पर जा रहा हूं।

मैं स्नो लेपर्ड (v10.6.8) का उपयोग कर रहा हूं। PHP कमांड लाइन प्रोग्राम जो मैं उपयोग कर रहा हूं वह MAMP 2.1.0 के साथ आया था ।

जवाबों:


1

देखें http://measure9.varkel.net/2013/10/building-gnupg-for-php-5-5-on-osx/ (एक लंबा टेक्स्ट कैसे पैच और स्रोत से GnuPG निर्माण करने के लिए समझा)


अलग पूछने के लिए आपका स्वागत है! हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक-केवल उत्तर अमान्य हो सकते हैं यदि लिंक किए गए पृष्ठ बदल जाते हैं। उत्तर जिसमें कुछ भी नहीं है लेकिन एक लिंक हटाया जा सकता है।
GRG
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.