1

OSX lionにimagickとmongoをインストールしようとしています。私のphpインストールはhomebrewを介して行われることに注意してください。パッケージを正しくインストールしましたが、動作するはずですが、php は次を返します

警告: PHP の起動: imagick: モジュールを初期化できません モジュール API=20090626 でコンパイルされたモジュール モジュール API=20100525 でコンパイルされた PHP これらのオプションは、行 0 の不明で一致する必要があります

PHP 警告: PHP の起動: mongo: モジュールを初期化できませんモジュール API=20090626 でコンパイルされたモジュール モジュール API=20100525 でコンパイルされた PHP これらのオプションは、行 0 の不明で一致する必要があります

それを修正する方法の手がかりはありますか?

4

2 に答える 2

2

PHP エラーは、拡張機能を使用しようとしているサーバー ( 20100525 API は PHP 5.4) とは異なる API バージョン ( 20090626 API は PHP 5.3) の拡張機能をコンパイルしたことを示します。

自作で PHP 5.4 をインストールしたと思われますが、拡張機能のコンパイル時に OS X のデフォルト ヘッダー (PHP 5.3) を取得できました。拡張機能を PHP 5.4 で再コンパイルするか、Web サーバーを PHP 5.3 にダウングレードする必要があります。

以下を使用して、パス内の PHP ヘッダーのバージョンを確認できますphp-config

php-config --version

PHP と拡張 API のバージョン:

php -i | egrep "PHP (Extension|Version)"

考えられる修正:

  1. 最初にパスに含め/usr/local/binて、自作の PHP バージョンがシステムのデフォルトよりも優先されるようにします。

    export PATH=/usr/local/bin:$PATH
    
  2. Homebrew 経由で PHP 5.3 をインストールします。

    brew uninstall php54
    
    brew install php53
    
于 2012-09-03T21:31:43.537 に答える
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 .
于 2012-09-04T10:53:20.840 に答える