首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ubuntu 16.04上为php5.6安装GNU PG (GPG)

在ubuntu 16.04上为php5.6安装GNU PG (GPG)
EN

Stack Overflow用户
提问于 2016-10-26 10:21:42
回答 1查看 1.2K关注 0票数 1

我在我的ubuntuphp5.6和php7上安装了两个版本的php。5.6被设置为活动版本。现在,我尝试使用下面的代码来安装GPG,并将其安装在/etc/php/7.0目录下。

代码语言:javascript
复制
sudo apt-get install php-gnupg

如何为php5.6安装它?

EN

回答 1

Stack Overflow用户

发布于 2017-02-10 12:01:36

Php5.6的扩展dir是/usr/lib/php/20131226,php7.0的扩展dir是/usr/lib/php/20151012,如下命令所示:

代码语言:javascript
复制
php -r "print phpinfo();" | grep "extension_dir"

Pecl在/usr/lib/php/20131226/gnupg.so中安装gnupg,因为当PHP5.6启用时已安装了pecl

代码语言:javascript
复制
pecl list-files gnupg

结论:PHP7.0使用的扩展目录与安装gnupg的位置不同。

首先尝试,它没有工作,:在指向PHP5.6中的gnup.so的PHP7.0扩展目录中为gnup.so创建符号链接

代码语言:javascript
复制
sudo ln -s /usr/lib/php/20131226/gnupg.so /usr/lib/php/20151012/gnupg.so

导致

代码语言:javascript
复制
Warning: PHP Startup: gnupg: Unable to initialize module
Module compiled with module API=20131226
PHP    compiled with module API=20151012

第二次尝试也没有运行

  1. 卸载pecl扩展:sudo pecl uninstall gnupg
  2. 激活php v7.0
  3. 再次安装gnupg:sudo pecl install gnupg

给出相同的编译错误。

终解

安装使用PHP7.0的gnupg编译版本:参见php 医生来了

检查gnupg是否已安装

代码语言:javascript
复制
php -r 'var_dump(function_exists("gnupg_decrypt"));';
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40259674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档