ChatGPT解决这个技术问题 Extra ChatGPT

您的系统中缺少扩展 gd - laravel composer 更新

我通过 Composer (composer require barryvdh/laravel-dompdf) 在 Laravel 项目中新安装了 Dompdf。输入命令终端后回复以下错误。

Problem 1
    - dompdf/dompdf v0.7.0 requires ext-gd * -> the requested PHP extension gd is missing from your system.
    - barryvdh/laravel-dompdf v0.7.0 requires dompdf/dompdf ^0.7 -> satisfiable by dompdf/dompdf[v0.7.0].
    - Installation request for barryvdh/laravel-dompdf ^0.7.0 -> satisfiable by barryvdh/laravel-dompdf[v0.7.0].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/5.6/cli/php.ini
    - /etc/php/5.6/cli/conf.d/10-opcache.ini
    - /etc/php/5.6/cli/conf.d/10-pdo.ini
    - /etc/php/5.6/cli/conf.d/15-xml.ini
    - /etc/php/5.6/cli/conf.d/20-calendar.ini
    - /etc/php/5.6/cli/conf.d/20-ctype.ini
    - /etc/php/5.6/cli/conf.d/20-dom.ini
    - /etc/php/5.6/cli/conf.d/20-exif.ini
    - /etc/php/5.6/cli/conf.d/20-fileinfo.ini
    - /etc/php/5.6/cli/conf.d/20-ftp.ini
    - /etc/php/5.6/cli/conf.d/20-gettext.ini
    - /etc/php/5.6/cli/conf.d/20-iconv.ini
    - /etc/php/5.6/cli/conf.d/20-json.ini
    - /etc/php/5.6/cli/conf.d/20-mbstring.ini
    - /etc/php/5.6/cli/conf.d/20-phar.ini
    - /etc/php/5.6/cli/conf.d/20-posix.ini
    - /etc/php/5.6/cli/conf.d/20-readline.ini
    - /etc/php/5.6/cli/conf.d/20-shmop.ini
    - /etc/php/5.6/cli/conf.d/20-simplexml.ini
    - /etc/php/5.6/cli/conf.d/20-sockets.ini
    - /etc/php/5.6/cli/conf.d/20-sysvmsg.ini
    - /etc/php/5.6/cli/conf.d/20-sysvsem.ini
    - /etc/php/5.6/cli/conf.d/20-sysvshm.ini
    - /etc/php/5.6/cli/conf.d/20-tokenizer.ini
    - /etc/php/5.6/cli/conf.d/20-wddx.ini
    - /etc/php/5.6/cli/conf.d/20-xmlreader.ini
    - /etc/php/5.6/cli/conf.d/20-xmlwriter.ini
    - /etc/php/5.6/cli/conf.d/20-xsl.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

如何解决此错误

我已经使用以下评论安装了 GD。 sudo apt-get install php5-gd 以及 Apache 服务器已重新启动。我的 Laravel 版本是 5.3,Ubuntu 版本是 14.04

sudo apt-get install your-php-version-gd 为我做了。

E
Eugene van der Merwe

我已经安装了php7,我做了以下来解决完全相同的错误

sudo apt-get install php7.0-gd
sudo apt-get install php7.0-intl
sudo apt-get install php7.0-xsl

只是做sudo apt-get install php7.0-gd对我有用。
谢谢!像魅力一样工作:sudo apt-get install php7.2-gd sudo apt-get install php7.2-intl sudo apt-get install php7.2-xsl
好的!!这取决于我们安装的 PHP 版本
非常感谢。这是缺失的部分。我还必须添加 sudo apt-get install php-curl
在没有 php 版本的情况下为我工作。像sudo apt-get install php-gd。你可以做同样的事情
A
Angelwise

如果您使用的是 PHP 5.*,那么您必须安装

sudo apt-get install php5-gd

如果您使用的是 PHP 7.*,那么您必须安装

sudo apt-get install php7.0-gd

希望它会工作...

如果您使用的是 PHP 7.2 版,那么您必须安装

sudo apt-get install php7.2-gd... it worked for me

这是使用 SCL 和 PHP 7.1 时的 CentOS 7 节:yum install rh-php71-php-gd
这在 php 7.2.24 上对我有用(sudo apt-get install php7.2-gd)
E: 找不到包php7.2-gd... 伙计我不怀念PHP什么垃圾。
H
HFranco

打开你的 php.ini 并取消注释这一行:

;extension=php_gd2.dll


L
Lefty

对于 php-8,只需找到您的 php.ini 文件并取消注释行 extension=gd
下面是使用 XamppWindows 的图片指南

第 1 步:打开 php.ini 或在您的机器中找到它(C:/xampp/php/php.ini)

https://i.stack.imgur.com/mof6q.jpg

第 2 步:通过删除分号取消注释行 extension=gd

https://i.stack.imgur.com/s4MeW.jpg

第 3 步:保存文件并重新启动服务

https://i.stack.imgur.com/tZ6zV.jpg


像魅力一样工作:)
这可以说是互联网上最好的答案!在遇到无数死胡同后挽救了我的一天
h
hasandz

php-cli可能没有启用,可以这样启用;

sudo phpenmod gd

更新

我猜,您使用的是 ppa:ondrej php 包(5.6),这让您对默认的 ubuntu 14.04 php 包(5.5.9)感到困惑。

要从 ppa:ondrej 安装 php 5.6 gd 库,您应该使用:

sudo apt-get install php5.6-gd

在启用 GD 显示跟随错误之后。警告:/etc/php/5.6/mods-available 下不存在模块 gd ini 文件
我做你建议的方法。但我得到了同样的错误。 @VaheGalstyan
您使用哪个 php 版本?
P
Parvind

PHP 7.4.2 (cli) (built: Feb 5 2020 16:50:21) (NTS) 版权所有 (c) The PHP Group Zend Engine v3.4.0, 版权所有 (c) Zend Technologies with Zend OPcache v7.4.2, 版权所有 ( c),由 Zend Technologies 提供

对于 PHP 7.4.2

sudo apt-get install php7.4-gd sudo phpenmod gd


R
Rob

在安装缺少的依赖项之前,您需要检查您的系统上安装了哪个版本的 PHP。

php -v
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

在这种情况下,它是 php7.2。 apt search php7.2 返回所有可用的 PHP 扩展。

apt search php7.2
Sorting... Done
Full Text Search... Done
libapache2-mod-php7.2/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  server-side, HTML-embedded scripting language (Apache 2 module)

libphp7.2-embed/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  HTML-embedded scripting language (Embedded SAPI library)

php-all-dev/bionic,bionic 1:60ubuntu1 all
  package depending on all supported PHP development packages

php7.2/bionic-updates,bionic-updates,bionic-security,bionic-security 7.2.10-0ubuntu0.18.04.1 all
  server-side, HTML-embedded scripting language (metapackage)

php7.2-bcmath/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Bcmath module for PHP

php7.2-bz2/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  bzip2 module for PHP

php7.2-cgi/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  server-side, HTML-embedded scripting language (CGI binary)

php7.2-cli/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  command-line interpreter for the PHP scripting language

php7.2-common/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  documentation, examples and common module for PHP

php7.2-curl/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed]
  CURL module for PHP

php7.2-dba/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  DBA module for PHP

php7.2-dev/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Files for PHP7.2 module development

php7.2-enchant/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Enchant module for PHP

php7.2-fpm/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed]
  server-side, HTML-embedded scripting language (FPM-CGI binary)

php7.2-gd/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed]
  GD module for PHP

php7.2-gmp/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  GMP module for PHP

php7.2-imap/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  IMAP module for PHP

php7.2-interbase/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Interbase module for PHP

php7.2-intl/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Internationalisation module for PHP

php7.2-json/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  JSON module for PHP

php7.2-ldap/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  LDAP module for PHP

php7.2-mbstring/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  MBSTRING module for PHP

php7.2-mysql/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  MySQL module for PHP

php7.2-odbc/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  ODBC module for PHP

php7.2-opcache/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  Zend OpCache module for PHP

php7.2-pgsql/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  PostgreSQL module for PHP

php7.2-phpdbg/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  server-side, HTML-embedded scripting language (PHPDBG binary)

php7.2-pspell/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  pspell module for PHP

php7.2-readline/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed,automatic]
  readline module for PHP

php7.2-recode/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  recode module for PHP

php7.2-snmp/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  SNMP module for PHP

php7.2-soap/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  SOAP module for PHP

php7.2-sqlite3/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed]
  SQLite3 module for PHP

php7.2-sybase/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Sybase module for PHP

php7.2-tidy/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  tidy module for PHP

php7.2-xml/bionic-updates,bionic-security,now 7.2.10-0ubuntu0.18.04.1 amd64 [installed]
  DOM, SimpleXML, WDDX, XML, and XSL module for PHP

php7.2-xmlrpc/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  XMLRPC-EPI module for PHP

php7.2-xsl/bionic-updates,bionic-updates,bionic-security,bionic-security 7.2.10-0ubuntu0.18.04.1 all
  XSL module for PHP (dummy)

php7.2-zip/bionic-updates,bionic-security 7.2.10-0ubuntu0.18.04.1 amd64
  Zip module for PHP

您现在可以通过运行以下命令继续安装缺少的依赖项:

sudo apt install php7.2-gd


k
khushbu vaishnav

如果您使用的是 PHP 7.2 版,那么您必须安装

sudo apt-get install php7.2-gd

M
Michel

对于 php 7.1

sudo apt-get install php7.1-gd

干杯!


我得到了这个: E:无法找到包 php7.1-gd E:通过正则表达式“php7.1-gd”找不到任何包
添加 ppa 存储库并尝试: sudo add-apt-repository ppa:ondrej/php 和 sudo apt-get update 然后执行上述命令。
t
tomrlh

解决方案非常简单。

在您的 php.ini 中,只需取消注释行 extension=php_gd2.dll(或 .so 扩展名用于 unix 系统。)

希望能帮助到你。


E
Emma

这对我有用:

composer require "ext-gd:*" --ignore-platform-reqs

J
Jesse יִשַׁי

从 Arch 上的 Composer 2.0 开始,我使用:--ignore-platform-req=ext-gd

例如:

php composer install -n --ignore-platform-req=ext-gd

例如:(忽略多个要求)

php composer install -n --ignore-platform-req=ext-gd --ignore-platform-req=ext-ldap

可能需要忽略 Composer 要求,因为 Composer 可能会对已正确安装和启用的依赖项返回错误警告,请考虑 this Arch forum article

正如wiki所说,我已经在 /etc/php/php.ini 中安装了 php-gd 和 uncommeted extension=gd.so

感谢您对相关问题的回答,How to always use ignore-platform-reqs flag when running composer?


好答案。这会让你继续前进。谢谢@杰西斯蒂尔。这里有这么多答案,没有一个解释为什么?因为 CLI 和 Web 服务器可能使用不同的 php.ini 文件!启用了不同的扩展。您很少需要 GD 来执行命令行任务,因此它不在那个 php.ini 中。此外,如果您使用基于 Docker 的 Composer 容器,您可能会在完全不同的 PHP 版本下运行 Composer。正如杰西所说,只需忽略要求。
S
Sven Eberth

我正在开发 php 8.0.9,我只是在 xampp/php/php.ini 目录中的 php.ini 上取消注释。

;extension=gd

extension=gd

它再次正常工作


G
Giovani de Quadros

使用 Manjaro(Arch) Linux:

$ sudo pacman -S php-gd

在文件 /etc/php/php-ini 中,添加以下行:

extension=gd.so

A
Ashutosh Anand

对于 Windows:取消注释 php.ini 文件中的这一行

;extension=php_gd2.dll

如果上述步骤不起作用,请取消注释以下行:

;extension=gd2

A
Anurag
sudo apt-get install php7.4-zip

使用您的 php 版本。像这里我用7.4


我的系统操作系统是 ubuntu 20.04,我首先安装了 sudo apt-get install php7.4-gd,然后是你的命令,`sudo apt-get install php7.4-zip`。然后作曲家安装正常工作
A
Akshay Lokur

在 CentOS 7 上,尝试运行以下命令:

sudo yum install php72u-gd.x86_64

e
edi kemput

在docker中我发现了同样的问题,即使在“rm /etc/apt/preferences.d/no-debian-php”然后“apt update”“apt install php7.4-gd”之后

“php composer.phar update”错误“..... ext-gd .....”所以我的解决方案是直接使用php7.4“php7.4 composer.phar update”

及其工作。我不知道为什么。


Y
Yagnesh bhalala

它可以帮助你

apt install php-xml

systemctl restart apache2

从这里的reference,您可以简要了解一下。

谢谢 :)


a
aqibGenk

在 Windows 中的 Local 或 Xampp 上,转到:C:\xampp\php\php.ini

取消注释 extension=gd


S
Sonu Chohan
PHP VERSION - 7.3.21
WAMP SERVER

// use below command to fix ext-gd issue
// work for me
composer require "ext-gd:*" --ignore-platform-reqs phpoffice/phpspreadsheet

如果缺少 gd 扩展,此命令将不会神奇地安装它

关注公众号,不定期副业成功案例分享
关注公众号

不定期副业成功案例分享

领先一步获取最新的外包任务吗?

立即订阅