0

さて、Fink、Macports、Pecl などのさまざまなことをいじって 1 日を過ごした後、OSX に oauth.so モジュールをインストールすることができました。

しかし、私はMAMPをローカルで使用しています.MAMPは独自のバージョンのPHPを使用していると思います.モジュールはPHPのメインシステムバージョンにインストールされていますか?

したがって、MAMP フォルダーから PECL のバージョンを実行しました。

sudo /Applications/MAMP/bin/php5.2/bin/pecl install oauth

しかし、とにかくジェネリックフォルダーにインストールしたようです

    ...
    Build process completed successfully
    Installing '/usr/lib/php/extensions/no-debug-non-zts-20090626/oauth.so'
    install ok: channel://pecl.php.net/oauth-1.0.0
    configuration option "php_ini" is not set to php.ini location
    You should add "extension=oauth.so" to php.ini

/usr/lib/... フォルダーに注意してください。しかし、MAMP が使用している php.ini は、実際には /Applications/MAMP/bin/php5.2/lib/php/extensions/no-debug-non-zts-20060613 を調べます

.so ファイルをコピーするのと同じくらい簡単だと思っていましたが、それは期待しすぎていました..

この拡張機能を正しいフォルダーにインストールして、php に知らせるにはどうすればよいですか?

ありがとう

4

4 に答える 4

4

Mac OSX バージョン 10.7.4 で MAMP バージョン 1.9.6 を実行していますが、同じ問題がありました。

MAMP php エラーログを確認しました/Applications/MAMP/logs/php_error.log

そしてこのエラーを見つけました

[2012 年 7 月 22 日 12:11:20] PHP 警告: PHP の起動: 動的ライブラリを読み込めません '/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626 /oauth.so' - dlopen(/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/oauth.so, 9): 適切なイメージが見つかりません。見つけた:
        /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/oauth.so: mach-o ですが、行 0 の不明なアーキテクチャが間違っています

私は次のように修正しました:

  1. http://pecl.php.net/package/oauthからソースをダウンロード

    ターミナルを開き、ダウンロードしたファイルがある場所に移動して、次のコマンドを入力します。

  2. tar xzvf oauth-1.1.0.tgz

  3. cd oauth-1.2.2/oauth-1.2.2

  4. phpize

  5. sudo ./configure MACOSX_DEPLOYMENT_TARGET=10.7 CFLAGS="-arch i386 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch i386 -g -Os -pipe" CXXFLAGS="-arch i386 -g -Os -pipe" LDFLAGS="-arch i386 -bind_at_load"

    注:TARGET上記のコマンドで、 Mac OSX の正しいバージョン番号を入力してください。

  6. sudo make

  7. sudo make install

  8. sudo cp /usr/lib/php/extensions/no-debug-non-zts-20090626/oauth.so /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/oauth.so

  9. お気に入りのエディターでphp.ini(私の場合は にあります /Applications/MAMP/conf/php5.3/php.ini) を開き、拡張領域に次の行を追加します。

    extension=oauth.so

  10. 変更を保存して MAMP を再起動します。MAMP PHPINFO ページに oauth エントリが表示されます。

于 2012-07-22T20:32:34.877 に答える
0

MAMP インストールの php.ini を指すように pecl の php_ini 設定を設定する必要があります。そう:

sudo /Applications/MAMP/bin/php5.2/bin/pecl config-set /Applications/MAMP/conf/php.ini

これにより、pecl が現在の MAMP PHP 構成を使用するようになります。

于 2011-04-18T18:42:17.763 に答える