現在、PECL を介して PHP の拡張機能を構築しようとしています。
/Applications/MAMP/bin/php/php5.4.39/bin/pecl install memcached
OS X と MAMP を使用しているため、このエラーが発生しました。
/Applications/MAMP/bin/php/php5.4.39/include/php/Zend/zend.h:51:11: 致命的なエラー: 'zend_config.h' ファイルが見つかりません
MAMP は PHP のヘッダー ファイルなしで出荷されているため、手動で取得する必要がありました。そこで、 https://github.com/php/php-src/releases/tag/php-5.4.39にアクセスしてソースをダウンロードしました。
に解凍し/Applications/MAMP/bin/php/php5.4.39/include/
、フォルダーの名前を に変更し、php-5php-src-PHP-5.4.39
フォルダーphp
に変更してみました/Applications/MAMP/bin/php/php5.4.39/include/php
。
で構成スクリプトを実行しようとしました./configure
。しかし、それは見つかりませんでした。私が見つけたのはconfigure.ln
、私が言われたようにautoconf用でした。だから私は走っautoconf
た。Autoconf は次のようなエラーでクラッシュしました:
configure.in:2: エラー: マクロが定義されていない可能性があります: dnl
私は混乱していました。./buildconf
次のことを教えてくれたスクリプトを見つけました:
リリース パッケージで buildconf を実行しないでください。buildconf --force を使用して、このチェックをオーバーライドします。
私はそれを強制し、そこに行きます:./configure
スクリプトがついに存在しました.
php.net サイトで同じリリースを確認しました。前回これを行ったときは、このような混乱はまったくなかったと思ったからです。
だから私はこれをダウンロードしました:http://php.net/get/php-5.4.39.tar.bz2/from/a/mirror
./configure
スクリプトがありました。
ここで私の質問: php.net のリリースと GitHub のリリースが異なるのはなぜですか? また、スクリプトを使用しない場合、リリースバージョンで使用すべきではないスクリプトを使用せず./buildconf
に取得するにはどうすればよいですか?./configure
./buildconf
ありがとう :)