OSXで [〜#〜] mamp [〜#〜] を使用してPHP 7.2.1のgmp拡張機能をインストールする方法
楕円曲線デジタル署名アルゴリズム(ECDSA)とP-256曲線およびSHA-256ハッシュアルゴリズムを使用して、phpとこのライブラリ( lcobucci/jwt )でトークンを暗号化しようとしています。
phpスクリプト実行時のエラー:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'Mdanter\Ecc\EccFactory' not found
mdanter/ecc
dependicyパッケージがないと思ったので、次のコマンドを実行してみました。
コマンド実行中:
composer require mdanter/ecc
出力:
mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system
私はこのエラーを調査し、MAMPに関連するすべての情報を試しました。しかし、私はこの問題を解決できませんでした。 MAMPにgmp php拡張機能を具体的に追加した経験があり、私を助けてくれる人はいますか?
注:私は非常に経験豊富なWeb開発者ではありません。主にiOSアプリを作成し、phpでトークンを生成したいので、Apple Music Kit APIリソースにアクセスできます。
phpソースコードからgmp拡張をビルドする必要があります。
コンパイラツールチェーン、gmp lib、およびautoconf
をインストールするには、Xcodeと homebrew が必要です。
brew install autoconf gmp
私のMAPPはphp 7.2.8に付属しているので、このphpバージョンを例として使用します。MAPPインストールをアップグレードするか、7.2.1に関連するバージョンを置き換えることができます。 ダウンロード とphp(7.2.8)のソースコードをディレクトリに解凍し、ビルド環境をphpのインストールに対して構成し、拡張機能をビルドします。
cd ext/gmp
/Applications/MAMP/bin/php/php7.2.8/bin/phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.8/bin/php-config
make
make install
拡張機能の読み込み設定をphp.ini
の/Applications/MAMP/bin/php/php7.2.8/conf
に追加します。
extension=gmp.so
今これはうまくいくでしょう:
/Applications/MAMP/bin/php/php7.2.8/bin/php composer.phar require mdanter/ecc