web-dev-qa-db-fra.com

Exécution d'ImageMagick sur XAMPP 1.8.3 avec Windows 7

J'essaie depuis des heures de faire fonctionner ImageMagick sur mon hôte local (exécutant XAMPP 1.8.3 sur Windows 7). J'ai vérifié et essayé littéralement toutes les solutions que je peux trouver sur ce site Web, et des dizaines d'autres. Rien ne fonctionne. Peu importe la combinaison de builds d'ImageMagick et de DLL imagick que j'essaie, j'obtiens toujours une sorte d'erreur "impossible de trouver la DLL" lorsque j'essaie de démarrer Apache (le message spécifique varie en fonction de la combinaison que j'essaie, mais c'est toujours une sorte de message DLL message) manquant. Quelqu'un peut-il simplement me donner une combinaison (modérément récente) de XAMPP/ImageMagick/Imagick qui fonctionne?

20
Chris Stocking

D'ACCORD. J'ai finalement trouvé une combinaison qui fonctionne. Après [~ # ~] beaucoup [~ # ~] essais et erreurs, j'ai finalement réussi à faire fonctionner la combinaison ci-dessous sur ma machine. Espérons que cela fonctionne pour toute autre personne qui pourrait avoir des problèmes avec cela.

  • Système d'exploitation: Windows 7 64 bits
  • PHP: 5.5.6
  • XAMPP: 1.8.3
    • Compilateur: MSVC11
    • Architecture: x86
  • ImageMagick: ImageMagick-6.7.7-5-Q16-windows-dll (disponible ici )
  • DLL Imagick: version PHP5.5.x de http://www.peewit.fr/imagick/

Remarque: Une fois que j'ai essayé cela, Apache a démarré sans aucun message d'erreur. Je n'ai pas eu à redémarrer mon ordinateur (juste redémarré Apache). J'ai ImageMagick installé dans un répertoire qui n'a pas d'espace dans le nom (comme certains ont suggéré que cela pourrait être un problème avec certaines installations). Dans mon cas, je l'ai installé dans c:\xampp\imagemagick.

Bonne chance à vous!

34
Chris Stocking

Imagick est une extension PECL et le site officiel windows.php.net a compilé des versions des extensions PECL.

Veuillez télécharger Imagick à partir de: http://windows.php.net/downloads/pecl/releases/imagick/

Et téléchargez ImageMagick à partir de: http://windows.php.net/downloads/pecl/deps/

Veuillez noter que le téléchargement d'Imagick à partir d'un site et le téléchargement d'ImageMagick à partir d'un autre site ne fonctionneront probablement pas! En effet, lorsque Imagick est compilé, il utilise plusieurs paramètres qui varient en fonction des versions d'ImageMagick avec lesquelles il est compilé.

Pour info, le responsable de l'extension Imagick recommande de ne pas l'exécuter dans Apache , mais plutôt de l'exécuter en tâche de fond via quelque chose comme SupervisorD ou cron. C'est à la fois pour des raisons de sécurité et de performances.

13
Danack

Après avoir passé de nombreuses heures à essayer de faire fonctionner cette foutue chose (Windows 7, 64 bits), sans succès, j'ai décidé de regarder d'autres systèmes pour voir comment ils traitaient le problème. Mediawiki n'a simplement PAS UTILISÉ l'extension ImageMagick/PHP! Ils appellent directement le programme ImageMagick convert.exe et utilisent le résultat (voir includes/media/Bitmap.php dans le package mediawiki).

Vous ne pouvez pas vraiment blâmer les gens d'avoir abandonné l'extension PHP, car apparemment, elle doit être compilée avec le "bon" compilateur toujours variable et correspondre au moins avec les versions Apache et ImageMagick. ce qui est surprenant, c'est que ce problème dure depuis plus de cinq ans et qu'il n'est toujours pas réglé.

Donc ma "solution/réponse" n'en est pas vraiment une, c'est essentiellement d'appeler ImageMagick d'une manière différente pour éviter le problème, comme l'a fait mediawiki.

2
Mr Ed