heroku安装gd扩展失败 [英] heroku installing gd extension failed

查看:57
本文介绍了heroku安装gd扩展失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试安装 gd (或 ext-gd )位于 heroku 上的库.

I'm trying to install gd (or ext-gd) libraries on heroku.

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

When I try to install them using composer (I have it as follows)

{
    "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"
}

我知道了

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权限,因为我不知道root heroku密码.

So, tried to install from apt-get (sudo apt-get install php7-gd), but I dont have sudo permissions as I don't know the root heroku password.

有任何解决方法吗?

EDIT

EDIT

为更好地解释我所做的事情,这是完整的命令列表

To explain better what I've done, here's the entire commands list

$ 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)说的对未定义函数App \ Http \ Controllers \ imagecreatefrompng()的调用

And I'm unable to use the gd libraries as php (Laravel) says Call to undefined function App\Http\Controllers\imagecreatefrompng()

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

If I run composer require ext-gd from my local computer I get

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

推荐答案

首先,您必须在本地与php捆绑.

First off, You must bundle with php locally.

1.步骤包含在您的composer.json

1. Step Include in your composer.json

{
  "require": {
      ..
      "ext-gd": "*",
      ...
   }
}

2.步骤更新作曲家

composer update

需要时间......喝咖啡.

it takes a time....take a coffe..

3.步骤用heroku cli发布

3. Step publish with heroku cli

git push heroku master

关于pusblish,请注意输出,并检查是否有下面的第5行类似的内容,如果您没事的话.

On pusblish pay attention to output and check if you have something like my line 5 below, if you have it all's right.

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...

快乐的编码.

这篇关于heroku安装gd扩展失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆