How to install gmp extension for php 7.2.1 using MAMP on OSX?
I'm trying to encrypt a token with php and this library(lcobucci/jwt) using the Elliptic Curve Digital Signature Algorithm (ECDSA) with the P-256 curve and the SHA-256 hash algorithm.
error when running php script:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'Mdanter\Ecc\EccFactory' not found
I figured that I'm missing the mdanter/ecc
dependicy package, so I tried running the following command.
command running:
composer require mdanter/ecc
output:
mdanter/ecc v0.5.0 requires ext-gmp * -> the requested PHP extension gmp is missing from your system
I've tried everything I could find researching this error and related to MAMP. But I couldn't solve this problem. Is there anyone here who has experience in adding the gmp php extension to MAMP specificly and is willing to help me out?
Note: I'm not a very experienced web developer, I mostly create iOS apps and I want to generate a token in php, so I can access the Apple Music Kit API resources.
you have to build the gmp extension from the php source code.
you need Xcode and homebrew, to install compiler toolchain, gmp lib and autoconf
:
brew install autoconf gmp
as my MAPP is shipped with php 7.2.8, I would use this php version as example, you could upgrade your MAPP installation or replace version related to 7.2.1. Download and unpack php(7.2.8) source code to a dir, then config the build environment against your php installation and build the extension:
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
add the extension loading config to php.ini
in /Applications/MAMP/bin/php/php7.2.8/conf
:
extension=gmp.so
now this would work:
/Applications/MAMP/bin/php/php7.2.8/bin/php composer.phar require mdanter/ecc