![MongoDB: PHP でドライバーをロードできない](https://rvso.com/image/623622/MongoDB%3A%20PHP%20%E3%81%A7%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%82%92%E3%83%AD%E3%83%BC%E3%83%89%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84%20.png)
私は作ろうとしているmongo-php-ドライバーと連携PHP5.5.7 よりの上OS X 10.9.1しかし、行き詰まってしまいました。見つけられる限りのことをすべて試しましたが、何も機能しませんでした...
すべては正常にコンパイルされますが、PHP は拡張機能をロードせず、非常に奇妙なエラーが発生します。
Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so' - dlopen(/usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so, 9): Symbol not found: _core_globals
Referenced from: /usr/local/lib/php/extensions/no-debug-zts-20121212/mongo.so
Expected in: flat namespace
in Unknown on line 0
スレッドの安全性とアーキテクチャの問題について確認しましたが、すべて問題ありません。拡張機能と PHP はどちらもスレッドセーフで 64 ビットです。
phpize
また、やなどのバイナリに問題がないか確認しましたphp-config
が、すべて問題ないようです...
本当に何をしたらいいのか分かりません。誰かヒントをご存知ですか?
指摘したようにボレタク7そしてマッドハッター私がやったことは次のとおりです:
- PHP 5.5.7 をダウンロードし、次のようにコンパイルしました
./configure --with-apxs2=/usr/local/apache2/bin/apxs
。 - ダウンロードしたマスターmongoドライバのブランチであり、デフォルト設定でコンパイルされています指示された;
- php.ini に拡張機能を追加しました:
extension = mongo.so
; - 実行する
php -v
と、前に言った奇妙なエラーが発生しました。 - PHP とドライバーが 64 ビットでコンパイルされているかどうかを確認しました。コンパイルされていました。
phpize
およびphp-config
が手順 1 で以前にインストールされたものかどうか確認しました。- 叫んだクソだそして助けを求めました。
- 1.4.5 ドライバー バージョンを試すことができることに気付きました。バン!完了しました。すべてが動作するようになりました。