MongoDB:无法在 PHP 上加载驱动程序

MongoDB:无法在 PHP 上加载驱动程序

我正在努力mongo-php-驱动程序与...合作PHP 5.5.7OS X 10.9.1但我走进了死胡同,我尝试了所有能找到的方法,但都没有任何效果……

一切都编译正常,但 PHP 不会加载扩展并给出一个非常奇怪的错误:

Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so' - dlopen(/usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so, 9): Symbol not found: _core_globals
  Referenced from: /usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so
  Expected in: flat namespace
 in Unknown on line 0

我已经检查了线程安全和架构问题,但一切都很好,扩展和 PHP 都是线程安全的并且是 64 位的。

我还检查了二进制文件是否存在任何问题,例如phpizephp-config,但一切似乎都很好......

我真的不知道该怎么办,有人知道吗?


正如voretaq7疯了这是我做的:

  1. 下载 PHP 5.5.7 并使用 进行编译
    ./configure --with-apxs2=/usr/local/apache2/bin/apxs
  2. 下载了掌握mongo 驱动程序的分支,并使用默认配置进行编译指示
  3. 在 php.ini 中包含扩展:
    extension = mongo.so
  4. 运行php -v后出现了我之前说过的奇怪错误;
  5. 检查 PHP 和驱动程序是否以 64 位编译,结果确实如此;
  6. 检查是否phpizephp-config步骤 1 中安装过,是的;
  7. 大叫操他妈的并寻求帮助。
  8. 我意识到我可以尝试 1.4.5 驱动程序版本。砰!完成,现在一切正常。

答案1

此问题仅发生在最新版本

我刚刚尝试过1.4.5一切顺利!

相关内容