我试图让最新的Mongo驱动程序与OS X 10.5.8上的MAMP 1.9.6一起使用。Mongo PHP驱动程序1.2.10与MAMP
我从源代码构建它,因为它似乎没有预编译版本,将其包含到正确的目录并重新启动Apache。
但PHP无法识别扩展名。我以前使用的1.0.11驱动程序工作正常,但我需要新版本,因为Doctrines ODM需要它。
当我用1.0.11替换1.2.10 mongo.so并重启apache mongo时可用。我不明白什么是错的。
任何人有这种行为或任何猜测得到这个工作?
更新:PHP错误日志中显示以下内容:
[01-Jun-2012 22:02:37] PHP Warning: PHP Startup: mongo: Unable to initialize module
Module compiled with module API=20060613
PHP compiled with module API=20090626
These options need to match
in Unknown on line 0
我不太清楚这是什么意思?
2.更新: 我终于能够同步API版本phpize
。
但现在我无法再建立驱动程序了。
我做到以下几点:
phpize
./configure
make
sudo make install
但在make
命令我得到吨的语法错误。似乎它找不到几个头文件。
非常第一个是zend_config.h
真的我只是与其他两个文件:
zend_config.nw.h
zend_config.w32.h
我下载的是甲基苯丙胺成分得到这个文件。为什么我错过了这一个?还有很多其他的。
我正在使用PHP 5.3.5有没有办法从不同的来源获得这些头文件?
查找PHP启动错误(在此处启用日志记录)。我会说出于某种原因PHP无法加载二进制扩展。也许有些编译问题。 – hakre
添加了日志文件行。 –
好吧,正如它所说的,API版本不匹配。在编译模块时,请指定您需要使用API 20090626.您已使用远远落后的API 20060613。 – hakre