You are here: Home » Справка и подсказки » Решение проблемы Unable to load dynamic library ‘mcrypt.so’ (tried: /usr/lib/php/modules/mcrypt.so

Решение проблемы Unable to load dynamic library ‘mcrypt.so’ (tried: /usr/lib/php/modules/mcrypt.so

Если при работе PHP скриптов вы сталкиваетесь с ошибкой:

PHP Warning:  PHP Startup: Unable to load dynamic library 'mcrypt.so' (tried: /usr/lib/php/modules/mcrypt.so (/usr/lib/php/modules/mcrypt.so: undefined symbol: spprintf), /usr/lib/php/modules/mcrypt.so.so (/usr/lib/php/modules/mcrypt.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

Значит ваш PHP настроен на использование mcrypt. Но Функция Mcrypt считается устаревшей начиная с PHP 7.1.0, а в PHP 7.2 может просто не работать.

Вместо mcrypt теперь следует использовать openssl_encrypt.

Для того, чтобы отключить mcrypt в Arch Linux / BlackArch, откройте файл /etc/php/php.ini:

sudo vim /etc/php/php.ini

Найдите там строку

extension=mcrypt.so

и замените её на строку:

;extension=mcrypt.so

Это должно предотвратить указанную ошибку.

Для поддержки OpenSSL в PHP вам необходимо скомпилировать PHP с опцией --with-openssl[=DIR]:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *