Fatal error: Class 'Imagick" introuvable
PHP 5.3.8
WAMP 2.2.21
ImageMagick 6.6.2 Q16
Fatal error: Class 'Imagick" pas trouvé arrive n'importe quoi.
Peu importe combien de fois je...
- Installer/réinstaller les différentes versions de ImageMagick
- Essayer différentes versions de VC9 php_imagick.dll de " wamp\bin\php\php5.3.8\ext\'
- Avoir mis à jour mon php.ini: 'extension=php_imagick.dll'
- Avoir redémarré mon pc et WAMP... je ne peux pas compter combien de fois O_o
J'ai aussi ce message d'erreur sur WAMP démarrage
Le plus drôle, c'est que php_imagick.dll montre que dans mon PHP extensions via WAMP barre des tâches
mais pas dans mon localhost PHP-Chargé Extensions:
Quelqu'un a une idée de pourquoi ce qui se passe? Ou des suggestions?
SOLUTION: j'ai dû apprendre à la dure... WAMP 2.2 x32 PAS x64, ImageMagick 6.6.4 Q16 à la plus grande.
Combien de php.les fichiers ini, vous pouvez le trouver sur cette machine?
Hmmm.. ne pas se rendre compte que j'ai 2. Je vais mettre à jour la deuxième php.ini et rapport...
Attention, on peut être la CLI de PHP ini fichier, édition donc qui peut avoir des conséquences inattendues. PHP de sortie pour vous le chemin du PHP ini fichier c'est à l'aide de: inspectez la sortie de phpinfo() sur une page web (en localhost ou quoi que ce soit).
L'habituel problème avec de telles erreurs, c'est que l'un des imagick dépendances est manquant (a-t-elle tout? aucune idée) ou que imagick et/ou de l'une des dépendances ne sont pas binaires compatibles avec votre PHP (par exemple, 32 vs 64 bits compile).
DependencyWalker pouvez-vous dire cela (et il peut faire beaucoup plus pour aider les DLL de débogage de l'enfer!). Charger la DLL et faites défiler vers le bas de la liste des modules; la DLL que vous avez chargé sera dans la dernière ligne. Regardez la colonne "UC".
Hmmm.. ne pas se rendre compte que j'ai 2. Je vais mettre à jour la deuxième php.ini et rapport...
Attention, on peut être la CLI de PHP ini fichier, édition donc qui peut avoir des conséquences inattendues. PHP de sortie pour vous le chemin du PHP ini fichier c'est à l'aide de: inspectez la sortie de phpinfo() sur une page web (en localhost ou quoi que ce soit).
L'habituel problème avec de telles erreurs, c'est que l'un des imagick dépendances est manquant (a-t-elle tout? aucune idée) ou que imagick et/ou de l'une des dépendances ne sont pas binaires compatibles avec votre PHP (par exemple, 32 vs 64 bits compile).
DependencyWalker pouvez-vous dire cela (et il peut faire beaucoup plus pour aider les DLL de débogage de l'enfer!). Charger la DLL et faites défiler vers le bas de la liste des modules; la DLL que vous avez chargé sera dans la dernière ligne. Regardez la colonne "UC".
OriginalL'auteur Terry | 2012-10-24
Vous devez vous connecter pour publier un commentaire.
Vous n'êtes pas le chargement de la
php_imagick.dll
extension.Un premier temps de vérifier que le fichier est il existe et est lisible. Si c'est le cas, il ne se charge pas parce que la DLL elle-même nécessite quelques autres DLL; cette erreur n'est pas affiché par Windows. Vous aurez besoin de certains outils comme DÉPEND pour charger
php_imagick.dll
et voir ce que les externes non résolus qu'il contient.Vous trouverez probablement que certaines fonctions sont importés par une bibliothèque (comme
libeay32.dll
) qui est peut-être associée à une extension que vous n'avez pas de charge, ou s'il est dans le répertoire PHP, mais aurait été copié sur Windows SYSTÈME de répertoire, ou peut-être utilise une autre exécution VC (e.gMSVCR90.DLL
).Par exemple, un échantillon de PHP 5.3
php_imagick.dll
j'ai trouvé s'avère dépendent de ces deux DLLet devinez quoi, CORE_RL_MAGICK est lui-même, selon d'autres symboles, ce qui explique les problèmes de ce gars-là a été l'expérience (sa solution était peut-être un peu plus approfondie que ce qui est nécessaire, mais bon, tout ce qui fonctionne-et c' pourrait fonctionner pour vous aussi, mais lisez la suite)
ImageMagick - "CORE_RL_magick_.dll pas trouvé" ou comment installer RMagick sur windows avec ruby 1.9.2
À la recherche dans CORE_RL_MAGICK à nouveau avec DÉPEND s'avère une dépendance sur une version spécifique d'Exécution Visual C++ (QT et aussi, pour certaines versions de IM), qui relie dans le laid peut de vers connus comme "VC6 contre VC9" (par exemple,http://www.websiteadministrator.com.au/articles/install_guides/installing_php533_pg2.html ).
Maintenant, ce qui doit vous faire? Il dépend. Littéralement; car au lieu de aveuglément la réinstallation au hasard jusqu'à ce que les étoiles sont à droite (encore une fois: il pourrait travail. Elle le fait souvent!), Je mettrait le feu à DÉPEND du
imagick
DLL, puis sur ImageMagick core DLL, et ainsi de suite, jusqu'à ce que j'ai chassé dans le labyrinthe de twisty peu de dépendances, tous pareils, que Windows devrait vous parler, mais ne le fait pas.(C'est pourquoi il est appelé "l'Enfer des DLL").
L'édition de réponse...
Qui pourraient être les plus utiles réponse que j'ai obtenue. Jamais.
Merci pour l'aide! ps. C'est ma première fois de faire ce genre de chose, "l'Enfer des DLL" est un euphémisme.
Vous êtes les bienvenus. Vous pouvez aussi lire "l'Enfer des DLL' entrée sur Wikipédia, ou l'Joel sur le Logiciel de discussion ( discuss.fogcreek.com/joelonsoftware/... ).
OriginalL'auteur LSerni