3

次の手順に従って、lamppを使用してmongoのphpドライバーをインストールしました。

http://abstract2paradox.wordpress.com/2012/01/26/adding-mongo-db-driver-to-xampp/

私がlamppを開始すると、次のエラーが発生します

警告:PHPの起動:ダイナミックライブラリを読み込めません'/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/mongo.so'-/opt/lampp/lib/php/extensions/no- debug-non-zts-20090626 / mongo.so:間違ったELFクラス:0行目の不明のELFCLASS64

何か案は?

ありがとうございます

4

2 に答える 2

6

これは、PHPが32ビットモードでコンパイルされているが、mongo拡張機能は64ビットモードであることを意味します。Appleのコンパイル済みPHPも32ビットモードであると思います。次の方法で確認できます。

php -r'echo PHP_INT_MAX、 "\ n";'

それが表示された場合

9223372036854775807
あなたは64ビットプラットフォームを使用しています。

ここで、あなたの場合、32ビットアーキテクチャでMongoDB拡張機能をコンパイルすることを確認する必要があります。http://artur.ejsmont.org/blog/content/how-to-build-mongodb-pecl-extension-in-32bit-for-php-52-on-macosx-snow-leaopardから私はあなたがそれを行うことができると信じていますと:

peclダウンロードmongo
tar -xvzf mongo-1.2.7.tgz
cdmongo-1.2.7

CFLAGS = "-m32"

phpize
。/構成、設定
作る
インストールする
于 2012-02-22T09:50:45.980 に答える
0

問題は、上記のDerickによって概説されたとおりでした。問題を解決する方法は、32ビットバージョンのubuntu osをダウンロードし、vmwareを使用してPC上で仮想マシンとして実行することでした。後で、このページの「手動インストール」セクションに従ってphpドライバーをインストールすると、すべて機能しました。ページに記載されているように、githubからphpドライバーを入手しました。

後で、ファイルmongo.soを仮想マシンで実行されているphpファイル拡張子ディレクトリから親OSにコピーしましたが、すべて機能するようになりました。

于 2012-03-02T11:09:30.687 に答える