Mcrypt für PHP 7.2 bereitstellen

Mit PHP 7.x gibt es Out of the Box die Erweiterung mcrypt als fertiges Paket für Debian, Ubuntu, etc. nicht mehr. Da der Support von PHP 5.x inzwischen ausgelaufen ist, folgen nun die Zwangsmigrationen auf neuere Versionen 7.1 bzw. 7.2. Leider gibt es genügend PHP Anwendungen, welche mit PHP 7.x kompatibel sind aber mcrypt nach wie vor voraussetzen.

Nachstehend eine kurze Anleitung, wie unter Ubuntu Server 18.04 LTS die Erweiterung bereitgestellt werden kann.

apt-get install php7.2-dev
apt-get -y install libmcrypt-dev
pecl channel-update pecl.php.net
pecl install mcrypt-1.0.1
bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/cli/conf.d/mcrypt.ini"
bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/apache2/conf.d/mcrypt.ini"

Abschließend prüfen, ob die Extension für PHP 7.2 verfügbar/geladen ist.

test@host.de:~$php -i | grep mcrypt
/etc/php/7.2/cli/conf.d/mcrypt.ini
Registered Stream Filters => zlib.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, convert.iconv.*, mcrypt.*, mdecrypt.*
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value

Alternativ kann die Extension auch in der jeweiligen php.ini eingebunden werden.

xtension=mcrypt.so

Viel Spaß beim Ausprobieren. 🙂