MAMP 環境に php 拡張機能をインストールする
PHP 拡張機能をインストールするときは、すぐに phpize を使用することを考えるでしょう。オンラインで検索するだけで、優れたチュートリアルが見つかります。しかし、真実は理解しているのに、なぜ数時間しかかからなかったのでしょうか?
1. php.net にアクセスして、対応するバージョンのソース コードをダウンロードし、
/Application/MAMP/bin/php/php5.6.10/include/php
に配置します。2. 対応する拡張機能ディレクトリに入り、phpize
$cd /Application/MAMP/bin/php/php5.6.10/include/php/ext/pcntl$/Applications/MAMP/bin/php/php5.6.10/bin/phpize
と同様のプロンプトが返されます。
3. コンパイル可能です
./configure --with-php-c/MAMP/bin/php/php5.6.10/bin/php-config –with-php-config ポイント現在使用しているphpバージョンのphp-configへ、このパスが間違っているとコンパイルは成功しても使用できなくなります。
4. make && make install
は比較的スムーズなようです。 ./configure --with-php-c/MAMP/bin/php/php5.6.10/bin/php-config
–with-php-config指向当前使用的php版本中的php-config,如果这个路径错了,编译成功也不能用的。
4、似乎还比较顺利:make && make install
。
那么问题就来了fatal error:'zend_config.h' file not found
。
直接搜索整台计算机:find / -name ‘zend_config.h’都没找到这个文件,好不容易从网上找到了。接着报错fatal error:'conf.w32.h' file not found
致命的なエラー:「zend_config.h」ファイルが見つかりません
という問題が発生します。 コンピューター全体を直接検索しました: find / -name ‘zend_config.h’ ですが、このファイルは見つかりませんでした。最終的にはインターネットから見つけました。次に、エラー 致命的エラー:'conf.w32.h' ファイルが見つかりません
が報告されます。
しばらく検索した後、問題を発見しました: MAMP はこれらのヘッダー ファイルをすべて削除しました...もう 1 つの手順を実行する必要があります:
$cd /Applications/MAMP/bin/php/php5.6.10/include/php/$./configure
icov のパスが指定されていないことを示すプロンプトが表示されます。–without-icov を追加するだけです./configure が成功する限り、それだけです。make && make install は必要ありません。
次に、ステップ 3 と 4 をもう一度実行します。コンパイルが成功すると、プロンプトが表示されます最後に、extension= を追加します。 pcntl.so を php.ini にコピーし、Apache を再起動すれば完了です。