Как я могу исправить ошибку предупреждения о невозможности загрузки динамической библиотеки gd2 php?

#php #linux #debian #php-7.3 #gd2

#php #linux #debian #php-7.3 #gd2

Вопрос:

У меня есть ошибка в php 7.3, которую я пытался решить некоторое время. Не удается загрузить динамическую библиотеку ‘gd2’.

Я думал, что нашел решение здесь:https://blog.amirasyraf.com/blog/php-startup-unable-to-load-dynamic-library-gd-so

Я попытался удалить sudo apt purge php7.3-gd и переустановить ее sudo apt update amp;amp; sudo apt install php7.3-gd , но это ничем не помогло. У меня нет libgd.so файлов, перечисленных в /usr/local/lib . Я использовал locate libgd и нашел /usr/lib/x86_64-linux-gnu/libgd.so.3 . Я создал символическую ссылку с /usr/local/lib/libgd.so на /usr/lib/x86_64-linux-gnu/libgd.so.3 , и это никак не помогло.

 uname -a
Linux 4.19.0-9-amd64 #1 SMP Debian 4.19.118-2 deb10u1 (2020-06-07) x86_64 GNU/Linux

php -v
PHP Warning:  PHP Startup: Unable to load dynamic library 'gd2' (tried: /usr/lib/php/20180731/gd2 (/usr/lib/php/20180731/gd2: cannot open shared object file: No such file or directory), /usr/lib/php/20180731/gd2.so (/usr/lib/php/20180731/gd2.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP 7.3.19-1~deb10u1 (cli) (built: Jul  5 2020 06:46:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.19, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.19-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
    with Xdebug v2.7.0RC2, Copyright (c) 2002-2019, by Derick Rethans
  

gd включен в php

Кто-нибудь может помочь мне решить эту проблему? Что я упускаю из виду, пытаясь найти решение?

Комментарии:

1. Пожалуйста, поделитесь более подробной информацией, такой как задействованный код и ваши попытки решить проблему

Ответ №1:

Я столкнулся с той же проблемой и отправился на поиск причины:
grep -r gd2.so /etc/php/7.4 и grep -r gd2.so /etc 2>/dev/null
сообщение оказалось пустым…

… но, пропустив .so , найден виновник:

grep -r gd2 /etc/php 2>/dev/null

/etc/php/7.4/cli/php.ini:extension=gd2

Я отредактировал файл /etc/php/7.4/cli/php.ini и прокомментировал его с помощью ; , чтобы он читался ;extension=gd2

Теперь я больше не получаю ошибку

Обратите внимание, что это решение отключает gd2. Это решит проблему, только если вы сможете обходиться без библиотеки gd2