imagegd2(): GD2 image support has been disabled
- Rybajz
- Člen | 11
Ahoj,
v PHP 7.4 dostávám zvláštní chybu při práci s obrázky:
imagegd2(): GD2 image support has been disabled
File: …/vendor/nette/utils/src/Utils/Image.php:698
695: public function __clone()
696: {
697: ob_start(function () {});
698: imagegd2($this->image);
699: $this->setImageResource(imagecreatefromstring(ob_get_clean()));
700: }
Používám verzi Nette 3.0. Nevěděl by někdo, kde může být problém?
GD mám v php povoleno:(
- David Grudl
- Nette Core | 8227
Ta chyba říká, že jenom není povolena práce s formátem .GD, tedy např. funkce imagegd2() co se používá pro klonování. Proč to tak je netuším.
- nightfish
- Člen | 518
Je možné, že máš libgd ve verzi 2.3.3, ve které byla ve výchozí konfiguraci pro build vypnuta podpora pro formát gd/gd2. Je to chyba, která bude pravdpodobně pro libgd 2.3.4 revertnuta/opravena, nicméně pokud jsem správně pochopil, tak pro libgd 2.4 chtějí tuto změnu (vypnutí podpora gd/gd2 ve výchozí konfiguraci buildu) opět aplikovat – otázka je, jak se k ní postaví tvůrci balíčků pro PHP, jestli budou podporu pro vypnuté formáty zapínat explicitně v rámci buildu či nikoliv.
Kontext:
https://github.com/…d/issues/428#…
https://github.com/…bgd/pull/779
- Siki
- Člen | 9
Mám stejný problém. Po aktualizace Debianu se nainstalovala knihovna libgd 2.3.3.
Podle všeho je GD(2) starý formát a od verze 2.3.3 je „disabled“ (viz https://github.com/…cussions/701#…).
Vyřešil jsem to zatím tak, že v souboru …/vendor/nette/utils/src/Utils/Image.php jsem přepsal funkci imagegd2() na imagejpeg(). Vím, není to správné řešení, ale pro rychlou opravu to funguje.
I na php.net je napsané, že imagegd(2) by mělo být použité jen pro vývoj a testování (https://www.php.net/…imagegd2.php)
- David Grudl
- Nette Core | 8227
Zkusil jsem dát do nette/utils 3.2-dev klonování přes PNG, tak zkuste, jestli vám to funguje.
- simPod
- Člen | 383
Lock file operations: 0 installs, 1 update, 0 removals
- Upgrading nette/utils (v3.2.7 => v3.2.x-dev f910b74)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 3 updates, 0 removals
- Downloading nette/utils (v3.2.x-dev f910b74)
- Upgrading nette/utils (v3.2.7 => v3.2.x-dev f910b74): Extracting archive
funguje, luxus, diky