web-dev-qa-db-fra.com

Problème avec ImageMagick et OS X Lion

[edit] Je résolvais des problèmes avec mon environnement de développement quand j'ai remarqué que l'un de mes problèmes était la dépendance à ImageMagick, car c'est une partie vitale de mon application .


Après la mise à niveau vers OS X Lion (10.7), je n'avais plus d'ImageMagick disponible, j'ai ensuite essayé de réinstaller en utilisant MacPorts sans succès, j'ai ensuite installé à partir de la source, et l'installation n'a pas été très réussie, j'ai dû convertir et identifier mais cela a généré des messages d'erreur que je n'ai malheureusement plus, j'ai, pour une raison étrange, décidé de supprimer toutes mes bibliothèques MacPort et j'ai commencé à utiliser Homebrew, j'ai essayé d'installer ImageMagick, il s'installe correctement, mais lorsque j'essaie de l'utiliser, cette erreur se produit

dyld: Library not loaded: /opt/local/lib/libltdl.7.dylib
  Referenced from: /usr/local/bin/convert
  Reason: Incompatible library version: convert requires version 11.0.0 or later, but libltdl.7.dylib provides version 10.0.0
Trace/BPT trap: 5

J'ai lu en ligne mais je n'ai aucune idée de ce qui se passe ici, j'ai trouvé que libltdl s'appelle libtool, et que j'ai évidemment besoin de le mettre à niveau vers une version plus récente, mais je n'ai trouvé aucune indication sur comment ou où trouver la source, ou si cela doit déjà être géré par homebrew et pourquoi il ne l'a pas fait.

J'ai essayé d'installer à nouveau ImageMagick à partir de la source en utilisant ce script d'installation https://github.com/masterkain/ImageMagick-sl mais lorsque j'essaie d'utiliser convert, il génère une erreur similaire.

$ convert gnome.jpg -resize 50% gnome_.jpg
dyld: Library not loaded: /opt/local/lib/libltdl.7.dylib
  Referenced from: /usr/local/bin/convert
  Reason: Incompatible library version: convert requires version 11.0.0 or later, but libltdl.7.dylib provides version 10.0.0
Trace/BPT trap: 5

$ which convert
/usr/local/bin/convert

Que puis-je faire pour résoudre mon problème?

71
rroche

J'ai également mis à niveau vers Lion et perdu ImageMagick, bien que je reçois des erreurs différentes.

j'ai trouvé un Lion distribution sur imagemagick.org. pas un grand fan de la variable d'environnement DYLD_LIBRARY_PATH mais cela fonctionne.

ok grattez ça. je viens de télécharger la source ImageMagick et de recompiler:

cd /tmp
curl -OL ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar -xzf ImageMagick.tar.gz
cd ImageMagick-6.7.2-7/
./configure --prefix=/usr/local --disable-static --with-modules --without-Perl --without-magick-plus-plus --with-quantum-depth=8 --disable-openmp --with-gs-font-dir=/usr/local/share/ghostscript/fonts
make
Sudo make install
27
firien

Le 10.8, j'ai résolu ce problème avec:

brew install libtool --universal
brew link libtool

Si vous ne savez pas ce qu'est un breuvage, visitez https://github.com/mxcl/homebrew et son wiki.

172
LevB
brew uninstall imagemagick
brew install imagemagick --build-from-source

travaillé pour moi

66
jesuisbonbon

Moi aussi, j'utilise homebrew pour installer des paquets mais imagemagick a cessé de fonctionner après la mise à niveau d'OSX 10.8 vers 10.9 (Mavericks). J'ai dû faire les étapes suivantes:

brew uninstall imagemagick
brew uninstall libtool
brew install libtool --universal
brew install imagemagick --build-from-source

Pourquoi le --build-from-source? Eh bien pour moi courir brew install imagemagick à lui seul pour installer le binaire pré-construit n'était pas suffisant; il a corrigé l'erreur "dyln" d'origine mais a été remplacé par:

unable to load module `/usr/local/Cellar/imagemagick/6.8.7-7/lib/ImageMagick//modules-Q16/coders/png.la': file not found @ error/module.c/OpenModule/1277
30
arooaroo

Sur Mountain Lion OSX,

Même avec la version mise à jour pour imagemagick (qui inclut libtool), cette erreur m'a semblé arriver.

donc je l'ai corrigé en utilisant les commandes suivantes

brew uninstall libtool
brew install libtool --universal
brew link libtool --force
18
arun15thmay

Pour ceux qui cherchent et qui ont toujours des problèmes, j'ai utilisé ceci:

https://github.com/maddox/magick-installer

8
23inhouse

Cela m'a aidé après avoir restauré OS X 10.9.3 à partir de Time Machine.

brew uninstall imagemagick
brew uninstall libtool
brew install libtool --universal
brew unlink libtool && brew link libtool
brew install imagemagick
brew install Homebrew/python/pillow
brew link --overwrite pillow
7

Le 10.8, avec brew, j'ai résolu ce problème avec:

brew install graphicsmagick

Pour les googleurs: si vous l'aviez installé avec brew au préalable, vous devrez le réinstaller en exécutant brew uninstall graphicsmagick avant de réinstaller. Facile.

7
timoxley

Le même problème peut se produire avec OSX Mountain Lion (aperçu 4). J'ai dû configurer certaines parties séparément car il y a des incompatibilités de bibliothèque:

dyld: Library not loaded: /usr/local/lib/libjpeg.8.dylib
  Referenced from: /usr/local/bin/convert
  Reason: Incompatible library version: convert requires version 13.0.0 or later, but libjpeg.8.dylib provides version 9.0.0

Je devais ajouter --with-fontconfig=no, --with-lzma=no et utilise /opt/local/share/... au lieu de /usr/local/share/... pour les polices ghostscript:

cd /tmp
curl -OL ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar -xzf ImageMagick.tar.gz
cd ImageMagick-6.7.8-0/
./configure --prefix=/usr/local --disable-static --with-modules --without-Perl --without-magick-plus-plus --with-quantum-depth=8 --disable-openmp --with-fontconfig=no --with-gs-font-dir=/opt/local/share/ghostscript/fonts --with-lzma=no
make
Sudo make install
4
teezee

Je pourrais résoudre le problème ImageMagick en installant le package correspondant à partir de site cactuslab .

Ensuite, en définissant les variables PATH dans le terminal:

export MAGICK_HOME="/usr/local/ImageMagick/"
export PATH="$MAGICK_HOME/bin:$PATH"
export DYLD_LIBRARY_PATH="$MAGICK_HOME/lib/"
4
Raghava Kotekar

Si vous utilisez Homebrew , essayez la commande suivante:

brew doctor

pour diagnostiquer les problèmes courants.

L'un d'eux pourrait être de supprimer la variable DYLD_FALLBACK_LIBRARY_PATH de votre ~/.profile si vous l'avez.

Ou vous devez réinstaller libtool en:

brew reinstall libtool --universal && brew unlink libtool && brew link libtool
3
kenorb

Pour 10.7.8 et plus, vous devez installer la version php et non la version pecl. Selon votre version de php que vous avez installée avec Macports, vous pouvez soit:

Sudo port install php-imagick

Sudo port install php5-imagick

Sudo port install php53-imagick

Sudo port install php54-imagick

N'oubliez pas de faire celle de votre version actuelle de php.

1
Devin Dixon

J'ai essayé la plupart des solutions ci-dessus et elles n'ont pas fonctionné. Voici comment j'ai résolu mon problème:

brew install imagemagick;
brew install freetype;
cd /usr/X11/lib/;    
Sudo mv libfreetype.6.dylib libfreetype.6.dylib.orig;
Sudo ln -s /usr/local/opt/freetype/lib/libfreetype.6.dylib libfreetype.6.dylib

Testé sur OS X 10.7.2

1
Olivier Lalonde