📌  相关文章
📜  扩展 gd 缺少 laravel 作曲家更新 - PHP (1)

📅  最后修改于: 2023-12-03 15:10:03.603000             🧑  作者: Mango

扩展 gd 缺少 laravel 作曲家更新 - PHP

如果你在使用 Laravel 时遇到了以下错误:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/framework[v8.0.0, ..., v8.4.1] require ext-gd * -> it is missing from your system. Install or enable PHP's gd extension.
    - Root composer.json requires laravel/framework ^8.0 -> satisfiable by laravel/framework[v8.0.0, ..., v8.4.1].

To enable extensions, verify that they are enabled in your .ini files:
    - /usr/local/etc/php/php.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-pdo_pgsql.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-pgsql.ini

这是因为项目依赖的 gd 扩展没有安装。下面是一些可能用到的方法。

检查当前 PHP 版本

在继续之前,请确保你正在运行 PHP 7.4 或更高版本。在命令行中输入以下命令来检查您的 PHP 版本:

php -v

如果你的版本低于 7.4,你需要升级你的 PHP 版本。

安装 GD 扩展

如果你使用的是 Ubuntu 或类似的系统,你可以使用以下命令来安装 GD 扩展:

sudo apt-get install php-gd

如果你使用的是 macOS,你可以使用以下命令来安装 GD 扩展:

brew install php-gd

对于其他操作系统,请参考操作系统的文档或搜索相应的安装指南。

重新安装 Laravel 依赖

完成安装后,你需要重新安装 Laravel 的依赖。可以使用以下命令:

composer install
注意事项
  • 如果你是在 Laravel 容器内工作,则需要在 Dockerfile 中添加以下行来安装 GD 扩展:

    RUN apt-get update && apt-get install -y \
      libpng-dev \
      libjpeg-dev \
      libfreetype6-dev \
      && docker-php-ext-install -j$(nproc) gd
    
  • 如果你正在使用某个服务器管理工具(如 Forge 或 Envoyer),则可能需要在该工具的 Web 界面中启用 GD 扩展。

  • 如果你的 php.ini 文件中禁用了 gd 扩展,你需要打开该文件并将以下行取消注释:

    extension=gd
    
  • 如果安装时遇到其他问题,请参考官方文档。