首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装gd扩展失败

安装gd扩展失败
EN

Stack Overflow用户
提问于 2016-10-21 12:21:00
回答 4查看 3.3K关注 0票数 3

我正在尝试在gd (或下-gd)库上安装heroku

当我尝试使用composer安装它们时(我有如下所示)

代码语言:javascript
复制
{
    "name": "cool/app",
    "type": "project",
    "require": {
        "ext-gd": "dev-master" (tried also installing "gd":"*", "ext-gd" : "*")
    },
    "license": "2016",
    "authors": [
        {
            "name": "Dario",
            "email": "my@email.it"
        }
    ],
    "minimum-stability": "dev"
}

我得到了

代码语言:javascript
复制
Problem 1
- The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.

所以,尝试从apt-get (sudo apt-get install php7-gd)安装,但我没有sudo权限,因为我不知道根heroku密码。

在这方面有什么工作吗?

编辑

为了更好地解释我所做的事情,下面是整个命令列表

代码语言:javascript
复制
$ heroku run bash
Running bash on ⬢ app... up, run.1644 (Free)
~ $ composer init


  Welcome to the Composer config generator  



This command will guide you through creating your composer.json config.

Package name (<vendor>/<name>) [app/app]: 
Description []: 
Author [, n to skip]: n
Minimum Stability []: 
Package Type (e.g. library, project, metapackage, composer-plugin) []: 
License []: 

Define your dependencies.

Would you like to define your dependencies (require) interactively [yes]? 
Search for a package: ext-gd

Found 15 packages matching ext-gd

   [0] stil/gd-text
   [1] gd/plesk-bundle
   [2] quince/persian-gd
   [3] xepan/gd-text
   [4] zgldh/gd-text-for-chinese
   [5] ext-calendar
   [6] ext-iconv
   [7] ext-dbus
   [8] ext-xml
   [9] ext-opendkim
  [10] ext-mcrypt
  [11] ext-openssl
  [12] ext-ssh2
  [13] ext-mongo
  [14] ext-mbstring

Enter package # to add, or the complete package name if it is not listed: ext-gd
Enter the version constraint to require (or leave blank to use the latest version): *
Search for a package: 
Would you like to define your dev dependencies (require-dev) interactively [yes]? no

{
    "name": "u11706/app",
    "require": {
        "ext-gd": "*"
    }
}

Do you confirm generation [yes]? 
~ $ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested PHP extension ext-gd * is missing from your system. Install or enable PHP's gd extension.

~ $ composer update --ignore-platform-reqs
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Writing lock file
Generating autoload files

我无法使用gd库作为php (Laravel),Call to undefined function App\Http\Controllers\imagecreatefrompng()

如果我在本地计算机上运行composer require ext-gd,就会得到

代码语言:javascript
复制
Using version ^0.0.0 for ext-gd
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Writing lock file
Generating autoload files
EN

回答 4

Stack Overflow用户

发布于 2019-06-26 18:13:48

首先,您必须在本地绑定php。

1.步骤包括在composer.json中

代码语言:javascript
复制
{
  "require": {
      ..
      "ext-gd": "*",
      ...
   }
}

2.步骤更新编写器

代码语言:javascript
复制
composer update

这需要一杯time....take咖啡。

3.使用heroku cli进行步骤发布

代码语言:javascript
复制
git push heroku master

注意输出,检查你是否有类似于我下面第5行的东西,如果你有,一切都是正确的。

代码语言:javascript
复制
1. remote: -----> PHP app detected
2. remote: -----> Bootstrapping...
3. remote: -----> Installing platform packages...
4. remote:        - php (7.3.6)
5. remote:        - ext-gd (bundled with php)
6. remote:        - apache (2.4.39)
7. remote:        - nginx (1.16.0)
8. remote: -----> Installing dependencies...

编码愉快。

票数 3
EN

Stack Overflow用户

发布于 2016-10-21 21:47:41

这并不是真正的Heroku问题,而是您的本地计算机的问题。

您正在本地运行composer update以重新生成composer.lock。您的composer.json包含对ext-gd的要求,因此本地计算机的PHP必须启用该扩展,否则需求无法满足,Composer就会抛出一个错误。

这种确切的情况,以及如何解决这个问题,将在https://devcenter.heroku.com/articles/php-support#using-optional-extensions上解释

票数 2
EN

Stack Overflow用户

发布于 2017-10-09 18:48:04

gd在Heroku上是可用的,您必须通过将下面的行添加到composer.json (在require部分下)来启用它。

代码语言:javascript
复制
"ext-gd": "*"

在将代码推到heroku之前,请确保在本地运行composer update,否则它将无法工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40176552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档