2014-12-09 22 views
17

Heroku powiedział:Heroku - jak włączyć gd w aplikacji Heroku PHP?

następujące wbudowane rozszerzenia zostały zbudowane „wspólne” i może być włączony przez composer.json (nazwy Wewnętrzny identyfikator podanych w nawiasach):

Ale to nie robi” t dać przykład, próbowałem z następującym composer.json: { "require": { "gd": "*" } }

Ale kiedy git push heroku master, otrzymuję:

Moja composer.json: { "require": { "gd": "*" } }

Ale kiedy git push heroku master, otrzymuję:

-----> Installing dependencies... 
     Composer version 1.0.0-alpha9-19-g10401d5 2014-12-09 11:32:02 
     Loading composer repositories with package information 
     Installing dependencies 
     Your requirements could not be resolved to an installable set of packages. 

     Problem 1 
      - The requested package gd could not be found in any version, there may be a typo  in the package name. 

     Potential causes: 
     - A typo in the package name 
     - The package is not available in a stable-enough version according to your minimum- stability setting 
      see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details. 

     Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems. 

!  Push rejected, failed to compile PHP app 

Jak można włączyć gd na Heroku ???

Odpowiedz

37

Spróbuj z:

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

zobaczyć tutaj using-optional-extensions

+3

Działa jak urok, dzięki! –

+1

Uwaga, to rozwiązanie powinno znajdować się w pliku tekstowym .json w katalogu głównym projektu (ten sam katalog, co folder .git). Zatwierdź i popchnij te zmiany i powinny one wpłynąć. – ecoe

+2

nie zapomnij wykonać aktualizacji kompilatora – Reda

0

Wystarczy dodać GD jako zależność (wymagać) w kompozytora nie załadować GD przedłużacza. Mówi tylko, że ten pakiet wymaga gd. "ext-gd" jest po prostu wirtualnym pakietem, nieistniejącym na prawdę.

musisz zainstalować to na swojej platformie.

patrz tutaj composer - platform-packages

+1

Dla tych, którzy są zdezorientowani: upewnij się, że zainstalowałeś php *. * - gd (zobacz http://stackoverflow.com/q/2283199/4900327), następnie uruchom 'aktualizację composer' w swoim katalogu repo i opcjonalnie dodaj 'vendor/*' do twojego .gitignore –

+0

@abhidivekar w jaki sposób uruchamiasz apt-get na heroku? kiedy wypróbuję apt-get w powłoce 'bucka" uruchomię ja, otrzymam błędy tylko do odczytu, co uniemożliwi mi instalację. php info mówi, że skompilowane '--with-gd = shared' choć jest mylące. – danronmoon

+0

Dowiedziono, że miało to związek z lokalną instalacją. – danronmoon