OSX上的gnupg和gpgme lib版本错误

时间:2016-06-20 12:28:29

标签: php macos gnupg pecl gpgme

我为天堂着想不能使用pecl在我的OS Yosemite机器上安装gnupg。

目的:

安装gnupg模块以在PHP中使用以进行PGP加密。

目前安装的东西:

安装autoconf后使用brew安装gpgme。我的机器上既没有brew也没有autoconf。安装的gpgme版本是1.6.0

问题:

当我sudo pecl install gnupg时,它尝试安装它,但退出

configure: error: wrong gpgme lib version or lib not found

我在下面粘贴完整的日志。

sudo pecl install gnupg
Password:
downloading gnupg-1.3.6.tgz ...
Starting to download gnupg-1.3.6.tgz (19,273 bytes)
......done: 19,273 bytes
5 source files, building
running: phpize
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
building in /private/tmp/pear/temp/pear-build-rootJfzyjJ/gnupg-1.3.6
running: /private/tmp/pear/temp/gnupg/configure
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-apple-darwin14.5.0
checking host system type... x86_64-apple-darwin14.5.0
checking target system type... x86_64-apple-darwin14.5.0
checking for PHP prefix... /Applications/XAMPP/xamppfiles
checking for PHP includes... -I/Applications/XAMPP/xamppfiles/include/php -I/Applications/XAMPP/xamppfiles/include/php/main -I/Applications/XAMPP/xamppfiles/include/php/TSRM -I/Applications/XAMPP/xamppfiles/include/php/Zend -I/Applications/XAMPP/xamppfiles/include/php/ext -I/Applications/XAMPP/xamppfiles/include/php/ext/date/lib
checking for PHP extension directory... /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20131226
checking for PHP installed headers prefix... /Applications/XAMPP/xamppfiles/include/php
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... no
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
checking for gawk... no
checking for nawk... no
checking for awk... awk
checking if awk is broken... no
checking for gnupg support... yes, shared
checking for gnupg files in default path... found in /usr/local/include
checking for gpgme_check_version in -lgpgme... no
configure: error: wrong gpgme lib version or lib not found
ERROR: `/private/tmp/pear/temp/gnupg/configure' failed

到目前为止我尝试了什么:

  • 我尝试通过brew命令安装gnupg并且安装得很好,但我无法在PHP中使用它。
  • 尝试使用phpizeconfigure手动编译gnupg,但在运行make命令时会触发相同的错误。

请告诉我如何解决此版本问题。

1 个答案:

答案 0 :(得分:0)

brew install gnupg[2]未安装gpgme,这是一个用于连接GnuPG并在另一个自制软件包中提供的库。同时运行brew install gpgme。之后,您应该在/usr/local/include下找到GPGME库。

或者,如果您通过Homebrew安装PHP,那么还有适用于PHP的GnuPG软件包:

$ brew search gnupg
gnupg
gnupg-pkcs11-scd
gnupg2                        
homebrew/php/php53-gnupg
homebrew/php/php55-gnupg
homebrew/versions/gnupg21     
homebrew/php/php54-gnupg
homebrew/php/php56-gnupg