php5 – pecl install mongo – 用错误的模块API继续编译

前端之家收集整理的这篇文章主要介绍了php5 – pecl install mongo – 用错误的模块API继续编译前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在这里使用Ubuntu 12.04,NginxPHP5-fpm

我有mongo在PHP 5.3上运行良好,然后我添加了ondrej / PHP5 ppa并更新到PHP5.4.它保留了GD和CURL扩展,但不是mongo.我重新将该行添加PHP.ini文件中,什么都没有.然后我启用了启动错误并得到了这个:

PHP Startup: Unable to load dynamic library '/usr/lib/PHP5/20100525/mongo.so' - /usr/lib/PHP5/20100525/mongo.so: cannot open shared object file: No such file or directory

所以,猜测,我找到-name’mongo.so’并将文件从20090626 /移动到20100525 / …导致此错误

PHP Startup: mongo: Unable to initialize module
Module compiled with module API=20090626
PHP    compiled with module API=20100525
These options need to match

然后我做了pecl卸载mongo和pecl install mongo – 它在20090626中创建了新的mongo.so文件/

我对这一切都不熟悉所以希望这是一个容易犯的错误!我只需要让mongo备份并运行.

我的猜测是:

> pecl install mongo实际上正在安装一个预先构建的二进制文件(这真的很愚蠢,但不会那么令人惊讶);要么>你仍然可以从你的5.3安装中找到旧的PHP5-dev软件包,而pecl正在寻找并使用它而不是5.4版本.看看你的PHP相关软件包列表(dpkg -l’* PHP *’),看看是否还有5.3软件包,并升级它们.

猜你在找的PHP相关文章