2018-05-15 16:05

如何ubuntu 18.04安装/激活PHP扩展ext-mcrypt


I am installing a fresh kubuntu system 18.04, which is using by default php7.2

A composer install for my current software project gibves me this error message:

The requested PHP extension ext-mcrypt * is missing from your system. Install or enable PHP's mcrypt extension.

Other than before there is no php-mcrypt available and other articles like this don't help since an analog php-mcrypt or php7-mcrypt does not exists.

How can I get a setup, which fulfills my requirement?

sudo apt-get install php7.2-ext-mcrypt

does not find an installation candidate.

Is there a difference between php 7.1 and 7.2?

not surprisingly this also does not do the trick:

$ sudo phpenmod mcrypt
WARNING: Module mcrypt ini file doesn't exist under /etc/php/7.2/mods-available
WARNING: Module mcrypt ini file doesn't exist under /etc/php/7.2/mods-available
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答


  • dongxi5423 dongxi5423 3年前

    So it looks like mcrypt is deprecated with php7.2

    So I will either have to replace it in my software or follow e.g. this howto to circumvent it:

    点赞 评论 复制链接分享
  • douzhizao0270 douzhizao0270 2年前

    First Check whether the mcrypt PHP module is present:

    $ php -m | grep mcrypt

    To install the mcrypt PHP module we first need to satisfy the following prerequisites:

    sudo apt install php-dev libmcrypt-dev php-pear

    Now we are ready to install mcrypt PHP module on our Ubuntu 18.04 system:

    $ sudo pecl channel-update
    $ sudo pecl install mcrypt-1.0.1

    Open the /etc/php/7.2/cli/php.ini file and insert:

    All done. When successful, checking for the presence of the mcrypt PHP module should produce the following output:

    $ php -m | grep mcrypt

    The mcrypt extension is included in PHP 5.4 through PHP 7.1. It was removed from PHP 7.2 and moved to an unofficial PECL extension because the mcrypt library is no longer maintained.

    For PHP 7.2+, PHP instead uses libsodium as a cryptography library. ServerPilot builds PHP 7.2+ with the official libsodium extension. New PHP code should be written to use libsodium rather than mcrypt.

    How to install mcrypt on PHP 7.2 or 7.3:

    点赞 评论 复制链接分享