我正在尝试在osx lion上安装imagick和mongo。请注意,我的php安装是通过自制程序完成的。我已经正确安装了软件包,它应该可以工作,但php会返回以下内容
警告:PHP启动:imagick:无法初始化模块 使用模块API = 20090626编译的模块 使用模块API = 20100525编译的PHP 这些选项需要匹配 在第0行的未知中
PHP警告:PHP启动:mongo:无法初始化模块 使用模块API = 20090626编译的模块 使用模块API = 20100525编译的PHP 这些选项需要匹配 在第0行的未知中
有关如何解决此问题的任何线索?
答案 0 :(得分:2)
PHP错误表明您已尝试使用扩展程序的服务器( 20100525 20100525 20100525 em> API是PHP 5.4)。
我怀疑你已经通过自制软件安装了PHP 5.4,但是在编译扩展时设法获得了OS X默认头文件(PHP 5.3)。您需要使用PHP 5.4重新编译扩展,或者将Web服务器降级到PHP 5.3。
您可以使用php-config
检查路径中的PHP标头版本:
php-config --version
PHP和扩展API的版本:
php -i | egrep "PHP (Extension|Version)"
可能的修复:
首先在您的路径中包含/usr/local/bin
,以便找到自制的PHP版本,而不是系统默认值:
export PATH=/usr/local/bin:$PATH
通过Homebrew安装PHP 5.3:
brew uninstall php54
brew install php53
答案 1 :(得分:0)
作为参考,我想补充一点 当brew安装php时,它会将附加的ini文件读取文件夹设置为 /usr/local/etc/php/5.4/php5/conf.d
虽然它实际上是 /usr/local/etc/php/5.4/conf.d
你可以通过符号链接
轻松解决这个问题cd /usr/local/etc/php/5.4/
mkdir php5
cd php5
ln -s ../conf.d .