Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Instalacja Imagick na Windows 10
Forum PHP.pl > Forum > PHP
adbacz
Teoretycznie działa, ale praktycznie wysypuje się serwer.

Zainstalowałem paczkę DLL stąd: https://pecl.php.net/package/imagick/3.4.3/windows
Pobrałem opcję: 7.0 Thread Safe (TS) x64

Wrzuciłem plik php_imagick.dll do /php/ext, a pliki zaczynające się od CORE_RL_ wrzuciłem do /apache/bin. Reset serwera, phpinfo() i wszystko działa. Ale jak tworzę nowy obiekt klasy Imagick($path) to nie mam żadnego błędu oprócz tego, że połączenie jest resetowane przez serwer. W plikach błedów PHP nie ma nic co by wskazywało na problem.

Miał ktoś podobny przypadek?

---------

Zapomniałem dodać:
Windows 10 X64
WAMP64
PHP 7.0.10
viking
Instalacja całego serwera włącznie z imagick. Zapewne php nie wie u ciebie gdzie szukać binarek.
adbacz
Dziękuję za linka, za chwilę będę ogarniał.

Swoją drogą, binarki chyba znalazł, bo w phpinfo() pokazały mi się dane dot. liba Imagick, w sensie nazwa, wersja, copyrights itp. Dlatego uznałem, że to błąd bardziej złożony niż tylko problem ze ścieżkami do liba.
Pilsener
Problem na 99% leży w synchronizacji wersji "madżika" z wersją PHPa. Teoretycznie wszystko wtedy działa, ale gdy próbujesz użyć jakiejś funkcji sypie błędami. Trzeba znaleźć odpowiednią binarkę.
adbacz
Zrobiłem dokładnie tak jak w przedstawionym linku - załadował się (w phpinfo() widnieje nowsza wersja), niby class_exists('Imagick') zwraca TRUE, jak robię samo new Imagick() to działa, ale jak wrzucę do konstruktora obrazek to sie wysypuje: new Imagick('/path/to/img.jpg');
viking
A co logi na to? Dodaj ścieżkę bin image magick do PATH.
adbacz
Ścieżkę dodałem. W logach właśnie nic nie ma - ani w Apache ani w PHP.

----------------------------------

Spróbowałem załadować obrazek w inny sposób. Teoretycznie coś poszło, ale teraz mam dziwny błąd:
Kod
Uncaught ImagickException: NoDecodeDelegateForThisImageFormat `JPEG' @ error/blob.c/BlobToImage/355

Załadowałem tak:
  1. $image = file_get_contents('obrazek.jpg');
  2.  
  3. $imagick = new Imagick;
  4. $imagick->readImageBlob($image);
  5. var_dump($imagick);
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.