Je continue à avoir cette erreur
Extension Mcrypt PHP requise
en bas après avoir lancé un composer update
:
Depuis que j'utilise Mac, j'ai essayé de lancer:
brew search mcrypt
brew install php56-mcrypt
Je reçois toujours le même message d'erreur.
J'ai résolu ceci en lançant les commandes suivantes
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54-mcrypt
php --version // To Test your php
Sudo composer update
Pas plus d'avertissement Mcrypt !!
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Generating optimized class loader
Après la mise à jour de la bière:
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
Si vous avez installé php5.6 (ou supérieur), vous pouvez utiliser la commande suivante pour savoir quelles versions sont disponibles dans Brew:
$ brew search mcrypt
homebrew/php/php53-mcrypt homebrew/php/php55-mcrypt homebrew/php/php70-mcrypt mcrypt
homebrew/php/php54-mcrypt homebrew/php/php56-mcrypt homebrew/php/php71-mcrypt
Dans mon cas, j'utilise php7.0:
$ brew install php70-mcrypt
Sur macOS High Sierra j’ai fait les étapes suivantes:
1- Rechercher le package:
brew search mcrypt
Résultat:
==> Recherche de robinets locaux ... homebrew/php/php71-mcrypt mcrypt homebrew/php/php53-mcrypt
homebrew/php/php54-mcrypt homebrew/php/php55-mcrypt homebrew/php/php56-mcrypt homebrew/php/php70-mcrypt libtomcrypt
2- Rechercher dans ma version php pour savoir ce que je peux installer:
php --version
Résultat:
PHP 7.1.7 (cli) (construit: 15 juillet 2017 18:08:09) (NTS) Copyright (c) 1997-2017 Les PHP Groupe Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
3- Installez le bon paquet, pour moi c'était 7.1.7 => homebrew/php/php71-mcrypt
brew install homebrew/php/php71-mcrypt
4- Trouver le fichier d'extension "mcrypt.so"
find /usr/ -type f -name "mcrypt.so"
Résultat:
trouver: /usr//local/Cellar/php71-mcrypt/7.1.13_19/mcrypt.so
5- Rechercher le php.ini
php -i | grep 'Configuration File'
Résultat (s'il existe):
Fichier de configuration (php.ini) Chemin =>/etc Fichier de configuration chargé => /etc/php.ini
6- Ajoutez la ligne suivante à la fin sur /etc/php.ini (voir la dernière étape votre chemin correct) l'extension mcrypt.so
extension=/usr/local/Cellar/php71-mcrypt/7.1.13_19/mcrypt.so
Terminez, vous pouvez maintenant exécuter votre commande.
Vous aurez besoin d'ajouter la ligne
extension=mcrypt.so
Dans votre fichier phi.ini responsable de la version CLI PHP . Pour le trouver, exécutez la commande suivante:
php -i | grep 'Configuration File'
En cours d'utilisation XAMPP sur mon Mac, j'ai donc dû installer php puis compiler mcrypt à l'aide de pecl, après avoir copié mcrypt.so dans XAMPP.
La liste des versions disponibles est la suivante: http://pecl.php.net/package/mcrypt
Les commandes étaient:
echo Install php...
brew install php
/usr/local/opt/php/bin/php -v
echo Correction of "error Connection to `ssl://pecl.php.net:443' failed"...
wget http://curl.haxx.se/ca/cacert.pem
Sudo cp cacert.pem /private/etc/ssl/cert.pem
Sudo mv cacert.pem /Applications/XAMPP/xamppfiles/share/openssl/cert.pem
/usr/local/opt/php/bin/pecl list-all
echo Compile and Install mcrypt.so...
Sudo /usr/local/opt/php/bin/pecl install mcrypt-1.0.1
Le dernier message du processus de construction de pecl était:
Build process completed successfully Installing '/usr/local/Cellar/php/7.2.7/pecl/20170718/mcrypt.so' install ok: channel://pecl.php.net/mcrypt-1.0.1 Extension mcrypt enabled in php.ini
Basé sur le chemin de processus de construction}, j’ai copié le fichier mcrypt.so compilé vers XAMPP et ai activé l’extension sur php.ini:
Sudo cp /usr/local/Cellar/php/7.2.7/pecl/20170718/mcrypt.so /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20170718/mcrypt.so
echo 'extension=mcrypt.so' >> /Applications/XAMPP/xamppfiles/etc/php.ini
Vérifiez si cela fonctionne:
/Applications/XAMPP/bin/php -i | grep "mcrypt"
Le résultat doit être:
mcrypt mcrypt support => enabled mcrypt_filter support => enabled mcrypt.algorithms_dir => no value => no value mcrypt.modes_dir => no value => no value
N'oubliez pas de redémarrer Apache pour le voir fonctionner avec le navigateur.
Peut-être que ça aide quelqu'un et que je gagne un bravo. Merci