Pacote php-mcrypt ausente no Ubuntu Server 18.04 LTS

19

O php-mcryptpacote está ausente no Ubuntu Server 18.04 LTS?

apt install php-mcrypt
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package php-mcrypt is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'php-mcrypt' has no installation candidate
Andrea Rossetti
fonte
Ubuntu php-mcrypt: packages.ubuntu.com/… ... Não há php-mcrypt para 18.04.
Knud Larsen

Respostas:

33

O mcrypt foi descontinuado no PHP 7.2, portanto não está disponível por padrão.

Você ainda pode instalar a extensão mcrypt usando pecl. Essas instruções são para o apacheservidor da web.

# Install prerequisites
sudo apt-get install php-dev libmcrypt-dev gcc make autoconf libc-dev pkg-config

# Compile mcrypt extension
sudo pecl install mcrypt-1.0.1
# Just press enter when it asks about libmcrypt prefix

# Enable extension for apache
echo "extension=mcrypt.so" | sudo tee -a /etc/php/7.2/apache2/conf.d/mcrypt.ini

# Restart apache
sudo service apache2 restart

Isso deve fazer você ir.

A longo prazo, você pode querer substituir mcrypt, isso foi preterido por um motivo.

Epskampie
fonte
7

Eu fiz o seguinte para fazer isso funcionar ...

sudo add-apt-repository ppa:ondrej/php
sudo apt-get install php7.1-mcrypt

Se você estiver executando o php5.6 ou 7.0, poderá usar o seguinte

sudo apt-get install php5.6-mcrypt
sudo apt-get install php7.0-mcrypt
DanBarber
fonte
1
O Ubuntu 18.04 tem o php7.2 de fato após o repositório ppa adicionado e o instalador php7.1-mcrypt, quando eu faço o a2enmod mcrypt, a resposta é "module mcrypt is not exist"!
Andrea Rossetti
você está provavelmente usando PHP 7.2 ( /etc/php/7.2) - este instala-lo para 7.1 ( /etc/php/7.1/) e só funciona se você também instalar / usar essa versão do phpapt-get install php7.1
Alvin
3

Primeiro verifique se o módulo PHP mcrypt está presente:

$ php -m | grep mcrypt

Para instalar o módulo PHP mcrypt, primeiro precisamos atender aos seguintes pré-requisitos:

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

Agora estamos prontos para instalar o módulo PHP mcrypt em nosso sistema Ubuntu 18.04:

$ sudo pecl channel-update pecl.php.net
$ sudo pecl install mcrypt-1.0.1

Abra o arquivo /etc/php/7.2/cli/php.ini e insira:

extension=mcrypt.so

Tudo feito. Quando bem-sucedida, a verificação da presença do módulo PHP mcrypt deve produzir a seguinte saída:

$ php -m | grep mcrypt
mcrypt
Worm PHP ...
fonte