0

そのため、開発用にローカルに mcrypt をインストールしようとしています。これまでソースからコンパイルしたことがないので、ご容赦ください。

  1. libmcrypt-2.5.8 (ソースから) をダウンロードしてインストールします
  2. コンパイル済みの mcrypt.so をhttp://www.viames.it/mac-os-x.htmlからダウンロードします(注: コンパイル済みの gd.so は問題なく動作するようです)。
  3. php.ini を更新します (関連する行を含めるため)
  4. Web 共有 (Apache) を再起動します。ページを読み込めません
  5. extension=mcrypt.so 行を削除して apache を再起動すると、ページが再度読み込まれます)
  6. php.net から PHP 5.2.8 ソースをダウンロードし、/ext/mcrypt から mcrypt の構成とインストールを試みます。

この時点で、make test を実行すると失敗します。

Number of tests :   36                36
Tests skipped   :    0 (  0.0%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :   36 (100.0%) (100.0%)
Expected fail   :    0 (  0.0%) (  0.0%)
Tests passed    :    0 (  0.0%) (  0.0%)

念のため、sudo make install を実行し、php.ini を更新して、ページを読み込もうとしました。ページは正常に読み込まれました。phpinfo ページにアクセスしましたが、mcrypt がまったく表示されません。私はこれを数回行ったり来たりしましたが、まだ何も起こりませんでした。

make テストが失敗したときに何をすべきだったのかわからないため、今何をすべきかについて混乱しています。ある)。以下に、make test failed の要約結果を含めます。

どんな助けでも大歓迎です:)

失敗したテストの概要
-------------------------------------------------- -------------------
フグの互換性テスト [tests/blowfish.phpt]
バグ #35496 (適切な init なしで mcrypt_generic()/mdecrypt_generic() でクラッシュ)。[tests/bug35496.phpt]
バグ #37595 (mcrypt_generic が間違った方法でデータ長を計算する) [tests/bug37595.phpt]
バグ #41252 (最初に mcrypt_generic_init を呼び出さずに mcrypt_generic を呼び出すとクラッシュする) [tests/bug41252.phpt]
バグ #46010 (ecb モードで iv に対して誤って生成された警告) [tests/bug46010.phpt]
バグ #8040 (MCRYPT_MODE_* は存在しないようです) [tests/bug8040.phpt]
mcrypt_cbc [tests/mcrypt_cbc.phpt]
mcrypt_cbf [tests/mcrypt_cbf.phpt]
mcrypt_create_iv [tests/mcrypt_create_iv.phpt]
mcrypt_decrypt [tests/mcrypt_decrypt.phpt]
mcrypt_ecb [tests/mcrypt_ecb.phpt]
mcrypt_enc_get_algorithms_name [tests/mcrypt_enc_get_algorithms_name.phpt]
mcrypt_enc_get_block_size [tests/mcrypt_enc_get_block_size.phpt]
mcrypt_enc_get_iv_size [tests/mcrypt_enc_get_iv_size.phpt]
mcrypt_enc_get_key_size [tests/mcrypt_enc_get_key_size.phpt]
mcrypt_enc_get_modes_name [tests/mcrypt_enc_get_mode_name.phpt]
mcrypt_enc_get_supported_key_sizes [tests/mcrypt_enc_get_supported_key_sizes.phpt]
mcrypt_enc_is_block_algorithm [tests/mcrypt_enc_is_block_algorithm.phpt]
mcrypt_enc_is_block_algorithm_mode [tests/mcrypt_enc_is_block_algorithm_mode.phpt]
mcrypt_enc_is_block_mode [tests/mcrypt_enc_is_block_mode.phpt]
mcrypt_enc_self_test [tests/mcrypt_enc_self_test.phpt]
mcrypt_get_block_size [tests/mcrypt_get_block_size.phpt]
mcrypt_get_cipher_name [tests/mcrypt_get_cipher_name.phpt]
mcrypt_enc_get_iv_size [tests/mcrypt_get_iv_size.phpt]
mcrypt_get_key_size [tests/mcrypt_get_key_size.phpt]
mcrypt_list_algorithms [tests/mcrypt_list_algorithms.phpt]
mcrypt_list_modes [tests/mcrypt_list_modes.phpt]
mcrypt_module_get_algo_block_size [tests/mcrypt_module_get_algo_block_size.phpt]
mcrypt_module_get_algo_key_size [tests/mcrypt_module_get_algo_key_size.phpt]
mcrypt_module_get_supported_key_sizes [tests/mcrypt_module_get_supported_key_sizes.phpt]
mcrypt_module_is_block_algorithm [tests/mcrypt_module_is_block_algorithm.phpt]
mcrypt_module_is_block_algorithm_mode [tests/mcrypt_module_is_block_algorithm_mode.phpt]
mcrypt_module_is_block_mode [tests/mcrypt_module_is_block_mode.phpt]
mcrypt_module_open [tests/mcrypt_module_open.phpt]
mcrypt_module_self_test [tests/mcrypt_module_self_test.phpt]
mcrypt_ofb [tests/mcrypt_ofb.phpt]
4

1 に答える 1

0

AppStore から Xcode をインストールする

MacPorts をインストールします ( http://guide.macports.org/#installing.macports )

ポートを使用して libmcrypt をインストールする

port install libmcrypt

PHP ソースをダウンロード ( http://php.net/downloads.php )

拡張機能をインストールする前にコンパイルする

cd /directory/to/php/source/ext/mcrypt
phpize .
./configure \
--with-php-config=`which php-config` \
--with-mcrypt=/opt/local
make 
sudo make install
于 2013-04-02T21:22:57.887 に答える