0

私は自分の開発用コンピューターをかなり台無しにして、助けを借りることができたのではないかと心配しています。基本的に、動的拡張機能としてapcがロードされたapt-getパッケージでubuntuにphp5.3.2をインストールしました。

今日、私はこのPPAを使用してphp5.4.6にアップグレードすることにしました:https ://launchpad.net/~ondrej/+archive/php5 。だから、私は今php5.4.6を実行しますが、apcはもうロードされません。

だから私はしました

pecl uninstall apc 

それから

pecl install apc-3.1.13

php5.4と互換性のあるバージョンのapcを入手したことを確認します。

Everythinはうまくいくようですが、拡張機能はまだロードされません。phpinfo()には表示されません。もちろん、php.iniにextension=apc.soを追加しました。

問題の原因を見つけたと思いますが、修正方法がわかりません。

私のphpinfo()によると:

PHP API                 20100412
PHP Extension           20100525
Zend Extension          220100525
Zend Extension Build    API220100525,NTS
PHP Extension Build     API20100525,NTS 

私がそうするとき、peclはapcをインストールします、私は得ました:

54 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

その結果、apc.soは/ usr / lib / php5/20100525ではなく/usr/ lib / php5/20090626にインストールされます。

どうすればこれを修正できますか?

4

2 に答える 2

0

phpバイナリソースのzend_modules.hのAPIバージョンを、phpinfo()で示されているPHP拡張API番号に変更するだけです。

たとえば、phpinfo()のphp拡張APIが20100525の場合、zend_modules.hファイルのAPI番号を20100525に変更してから、プロジェクトを再コンパイルする必要があります。

于 2012-12-29T13:38:30.040 に答える
-2

私はそれを修正する方法を見つけました。シンプルな

sudo apt-get install php-apc

トリックを行います。

于 2012-09-26T11:34:48.453 に答える