如何修复无法加载动态库gd2 php警告错误?

问题描述

我在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 && 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 is enabled in php

有人可以帮我解决这个问题吗?在寻找解决方案时我忽略了什么?

解决方法

我遇到了相同的问题,然后继续寻找原因:grep -r gd2.so /etc/php/7.4grep -r gd2.so /etc 2>/dev/null变成空的...

但省略了.so才找到了罪魁祸首:

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

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

我编辑了文件并用;注释掉了

现在我不再收到错误