他の誰かが構築したサイトを立ち上げるように頼まれました。これは、実行するためにMemcachedを必要とするWordpressショップサイトであり、ローカルサーバーでMemcachedとmemcache phpプラグインを動作させるのに問題があります。memcachedとmemcache PHPプラグインをインストールする前に、次のエラーが発生します。
Fatal error: Class 'Memcache' not found in [Path]wp-content/object-cache.php on line 350
memcachedとmemcache PHPプラグインを(Homebrew経由で)インストールしたので、「データが受信されませんでした」ページが表示され、Apacheエラーログにこのエラーが表示されます。
dyld: lazy symbol binding failed: Symbol not found: _mmc_queue_pop
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Expected in: flat namespace
dyld: Symbol not found: _mmc_queue_pop
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Expected in: flat namespace
[Sat May 05 16:38:27 2012] [notice] child pid 26491 exit signal Trace/BPT trap (5)
アクティビティモニターでそのpidを探してみましたが、役に立たず、ページを読み込もうとするたびに変わります。また、_mmc_queue_popについてはどこにも見つかりません。
Mac OSX Lion、PHPバージョン5.3.8、Memcachedバージョン1.4.13、およびMemcache PHPプラグインバージョン3.0.6を実行しています。
誰かがこれを修正する方法を知っていますか?
ありがとう!
-fgnu89-inline
中CFLAGS
/CXXFLAGS
。何が起こるかは、inline
新しいルールの下のキーワード_mmc_queue_pop
がすべてのインスタンスでインライン化し、memcache.so
動的にリンクするものを何も残さないことです。