Impossible d'installer RMagick 2.13.1. Impossible de trouver MagickWand.h.


154

Lorsque j'essaye d'installer rmagick, j'obtiens le message d'erreur suivant:

Can't install RMagick 2.13.1. Can't find MagickWand.h.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Je suis sous Mac OSX 10.6.8, ruby ​​1.9.2p290, rvm 1.10.2.

Quelqu'un peut-il m'aider s'il vous plaît à résoudre ce problème.


1
peut-être que cela aide: ruby-forum.com/topic/190824
Daniel

Salut Daniel, le lien que vous avez fourni donne une solution pour Debian apt-get -y install libmagick9-dev ne fonctionne malheureusement pas pour Mac OSx.Y a-t-il une autre alternative
blawzoo

Essayez ceci: github.com/maddox/magick-installer Cela a fonctionné avec apt-get, C _..., brew n'a pas
jstreebin

1
TL; DR: Si vous obtenez cela après la mise à niveau de Mavericks, essayez de désinstaller / réinstaller imagemagick / pkgconfig (comme suggéré ci-dessous par jwadsack)
thewoolleyman

Réponses:


70

J'ai eu un problème similaire avec la course

$ gem install rmagick

Tout d'abord, avez-vous installé imagemagick? Si vous n'êtes pas sûr, courez

$ convert --version

Si vous le faites, vous l'avez probablement installé avec Fink ou Macports (peut-être un homebrew?). Ce qui se passe, c'est que rvm ne trouve pas le répertoire imagemagick.

Après avoir lu /superuser/361435/i-have-compiled-imagemagick-on-my-centos-and-rmagick-wont-install, j'ai exporté le chemin imagemagick en ajoutant

$ export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:$PKG_CONFIG_PATH"

à mon ~ / .bash_profile, recherche du nouveau profil, puis exécution:

gem install rmagick

Cela a fonctionné pour moi après avoir fait cela.


Merci beaucoup Darren, ça marche, tu as raison rvm ne voyait pas le chemin
imagemagick

1
J'ai mis à jour PKG_CONFIG_PATH vers /Dir/to/where/found/MagickCore.pc et je me retrouve toujours avec «Impossible d'installer RMagick 2.13.1. Impossible de trouver MagickWand.h» .. des suggestions pour lesquelles il pourrait ne pas être récupéré et quoi d'autre je peux essayer .. Vous ne savez pas comment utiliser l'option -l mentionnée dans l'article que vous avez lié?
codeObserver

6
Je voudrais peut-être mentionner cette deuxième étape, car votre première étape seule n'a pas fonctionné pour moi (même si j'utilisais tmux): ln -s /usr/local/include/ImageMagick/wand /usr/local/include/wand && ln -s /usr/local/include/ImageMagick/magick /usr/local/include/magick
jackyalcine

8
sur mon mac, cette commande devrait changer en `$ export PKG_CONFIG_PATH =" / usr / local / lib / pkgconfig: $ PKG_CONFIG_PATH "`
linjunhalida

10
Il convient de noter que PKG_CONFIG_PATH concerne l'utilitaire pkg-config, qui n'a pas été installé par défaut sur mon Mac. J'ai reçu des /usr/local/bin/Magick-config: line 41: pkg-config: command not foundavertissements quand je l'ai fait gem install rmagick. J'avais l'habitude brew install pkg-configd'installer pkg-config, puis de définir le PKG_CONFIG_PATHcomme décrit ici et l'installation de gem a fonctionné.
jscott

272

Si vous êtes sur Ubuntu, l'installation de ce package est ce qui l'a corrigé pour moi:

sudo apt-get install libmagickwand-dev

5
Voilà la réponse. Veuillez l'accepter au lieu de celui ci-dessus.
northtree

2
Urgh, 75,2 Mo d'espace supplémentaire seront utilisés. Ai-je vraiment besoin des 75 nouveaux packages?
Jonathon Horsman

4
@JonathonHorsman Corrigez-moi si je me trompe, mais c'est la première fois que vous installez quelque chose ImageMagick? Pour que rmagick gem fonctionne, vous avez besoin des bibliothèques de développement ImageMagick et de toutes leurs dépendances associées. Donc, malheureusement, oui, vous avez besoin de tous ces packages. Du côté positif, votre ordinateur aura des capacités de traitement d'image de classe mondiale!
SporkInventor

9
@northtree - notez que l'affiche originale posait des questions sur OS X, pas Ubuntu
Darren Cheng

2
Vous avez également besoin du imagemagickpackage: github.com/rmagick/rmagick/wiki/Installing-on-Ubuntu
Robin Clowers

139

Il semble qu'ImageMagick 7 a changé le chemin du fichier.

Lors de la construction rmagick, car il inclut le fichier car wand/MagickWand.hil n'y a pas de solutions de contournement. Cela ressemble à rester avec ImageMagick 6 pour le moment.

Sur Mac OS X (j'ai testé sur Sierra), j'ai utilisé le versionsrobinet de HomeBrew comme:

brew tap homebrew/versions
brew install imagemagick@6

Ensuite, utilisez le chemin indiqué sur l'installation ci-dessus:

PKG_CONFIG_PATH=/usr/local/opt/imagemagick@6/lib/pkgconfig gem install rmagick

Pour installer avec ImageMagick 6.


6
Enfin quelque chose qui a fonctionné, merci beaucoup! Je suis aussi sur Sierra.
Jose Torres

1
A travaillé le 10.12.1 :) Merci
Dorian

2
Pour ceux qui s'inquiètent de savoir d'où PKG_CONFIG_PATHvient, si vous brew info imagemagick@6, cela vous dira que la formule de brassage est uniquement fût et non liée de manière symbolique /usr/local. Il vous dira également de définir PKG_CONFIG_PATH: /usr/local/opt/imagemagick@6/lib/pkgconfigsi nécessaire.
waynesford

1
Tu es un maître. Je n'ai aucune idée de pourquoi cela fonctionne, mais je suis content que cela ait fonctionné.
jayp

1
Jesus prends la roue!! Merci!
Raymond Ruiz-Veve

78

Je ne voulais pas jouer avec les variables d'environnement car je voulais que le bundler soit capable de compiler ce joyau seul sur une machine CI. Au lieu de cela, j'ai utilisé Homebrew pour installer pkg-config:

brew install pkgconfig

et la prochaine fois que j'ai essayé de compiler le gem RMagick, il a trouvé le fichier d'en-tête sans problème.

(Il s'agit de pkg-config 0.28, ImageMagick 6.8.0-10 et RMagick 2.13.2, le tout sur Mountain Lion.)


Tu as sauvé ma journée. Merci!
Chandresh Pant

Idem ici sur Mavericks. Merci!
Ben Kreeger

La ligne brew install pkgconfigfonctionnait très bien. Cela m'a aidé à installer rmagick avec succès.
Francisco Quintero

17
Dans mon cas (après Mavericks mise à jour qui semble avoir abandonné toutes les formules liées): brew uninstall pkgconfig imagemagick, brew install imagemagick pkgconfig, bundle.
jwadsack

La solution jwadsack est ce qui m'a corrigé - j'ai dû désinstaller / réinstaller imagemagick / pkgconfig après la mise à niveau des mavericks - même si j'avais déjà les dernières versions des deux déjà installées.
thewoolleyman

46

corrigez ce paramètre le chemin d'inclusion de votre installation imagemagick actuelle:

Installez ImageMagick avec Brew

brew install imagemagick

trouver la bibliothèque

$ mdfind MagickWand.h
/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/wand/MagickWand.h

Installez rmagick gem

$ C_INCLUDE_PATH=/path/MagickWand.h gem install rmagick

exemple:

$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/ gem install rmagick

3
Sur mon mac, j'ai dû obtenir deux répertoires dans le PKG_CONFIG_PATH. J'ai ajouté ces deux instructions d'exportation à mon fichier .zshrc (n'oubliez pas de rechercher le fichier avant d'essayer d'installer imagemagick): export PKG_CONFIG_PATH = "/ usr / local / Cellar / imagemagick / 6.7.7-6 / include / ImageMagick / wand: $ PKG_CONFIG_PATH "export PKG_CONFIG_PATH =" / usr / local / Cellar / imagemagick / 6.7.7-6 / lib / pkgconfig: $ PKG_CONFIG_PATH "
Don Leatham

J'ai essayé cela et cela a contourné le problème MagickWand.h, mais j'ai ensuite eu un problème avec Magick-config
Brett Hardin

fonctionne en cours d'exécution C_INCLUDE_PATH = / usr / local / Cellar / imagemagick / 6.7.5-7 / include / ImageMagick / brew install --fresh -vvvvv php54-imagick
jeremymarc

Cette étape a bien fonctionné pour moi, sauf avec de petites modifications. Dans les étapes ci-dessus, l'exemple est donné correctement mais l'étape inclut le fichier lui-même dans le chemin d'inclusion. Nous devons donner uniquement le chemin spécifié dans l'exemple.
maniempire

L'installation d'imagick version 6 a fait l'affaire pour moi. J'ai fait ce qui suit: 1) brew install rmagick 2) brew tap homebrew / versions brew install imagemagick @ 6 3) C_INCLUDE_PATH=/usr/local/Cellar/imagemagick@6/6.9.8-4/include/ImageMagick-6/ gem install rmagick
rosnk

39

J'ai marqué cela comme un favori parce qu'il semble revenir me mordre avec chaque nouveau système sur lequel j'ai besoin d'installer RMagick (et le temps est passé et les numéros de version ont roulé).

Mac OS X 10.8.4

rvm 1.22.3

ruby-2.0.0-p247

Outils de développement Xcode 4.6.3 installés

$ brew install imagemagick
==> /usr/local/Cellar/imagemagick/6.8.6-3

$ brew install pkgconfig
==> /usr/local/Cellar/pkg-config/0.28

$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.8.6-3/include/ImageMagick-6 PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.8.6-3/lib/pkgconfig/ gem install rmagick
Successfully installed rmagick-2.13.2

Un grand merci à tous ceux qui ont ajouté des réponses utiles ci-dessus!


5
C'est la SEULE chose qui a fonctionné pour moi. Bénissez-vous, bon monsieur.
imderek

C'est génial! Je vous encourage à fournir une réponse similaire avec les numéros de version actuels avec lesquels il travaille toujours.
tobinjim

2
Au cas où cela ne fonctionnait pas au début! assurez-vous de brew uninstallces deux packages de brassage et réinstallez-les.
0bserver07

1
A travaillé pour moi sur OS X Yosemite. J'ai essayé un tas de trucs, c'est la seule chose qui a fonctionné.
Peter Berg

29

Utilisateurs Mac utilisant Brew

Si vous pouvez utiliser la v6 d'ImageMagick au lieu de 7, vous pouvez essayer ceci

brew install imagemagick@6 --force && brew link imagemagick@6 --force

Notez que cela dissociera votre installation IM existante, donc soyez prudent si vous avez d'autres projets sur votre machine en utilisant ImageMagick sans problème.


1
Je vous remercie. J'ai essayé toutes les autres suggestions ci-dessus et seulement cela a fonctionné le 10.12.2
dwkns

12

Pour ma propre édification et d'autres, j'ai dépassé l'erreur concernant le magicwand.h en utilisant la suggestion xonico. MDFind plus le C_INCLUDE_PATH. Cependant, cela m'a ensuite donné une erreur sur MagickCore.pc. Ma commande finale pour que cela fonctionne devait inclure les deux comme ceci:

 C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.7-6/include/ImageMagick/ PKG_CONFIG_PATH=/usr/local/Cellar/imagemagick/6.7.7-6/lib/pkgconfig/ gem install rmagick

Évidemment, vos chemins varient selon que vous utilisez brew comme moi et quelle version d'imagemagick vous installiez. De plus, les outils de ligne de commande xcode devaient être installés, comme d'autres l'ont mentionné.

Merci pour les messages de tout le monde à ce sujet! Je suis en plus de vos réponses car elles ont contribué aux miennes!


Celui-ci était le même cas pour moi. Besoin des deux options de configuration!
Dillie-O

11

Pour Ubuntu:

sudo apt-get install imagemagick libmagickwand-dev
gem install rmagick

Bien que cela puisse être informatif pour les utilisateurs de Linux confrontés au même problème, l'OP a explicitement spécifié qu'il utilise Mac OS et donc cette réponse peut être trompeuse. À tout le moins, veuillez mentionner que la réponse est destinée à Linux (quelles distributions?).
lorefnon

8

J'ai eu un problème après la mise à jour vers Maverics. Il a perdu beaucoup de liens. Dans mon cas, j'ai dû actualiser les liens vers pkg-config

brew unlink pkg-config
brew link pkg-config

Ensuite, l'installation de rmagick a fonctionné comme un charme.


1
A travaillé pour moi aussi! Merci!
Dmitri

7

J'ai mis à jour vers Mountain Lion et j'ai commencé à avoir ce même problème. J'ai dû réinstaller brew, XCode, les outils XCode - à peu près tout l'environnement!

J'ai finalement résolu ce problème en utilisant la réponse de phopkins ci-dessus ...

brew install pkgconfig

Une fois que cela a été terminé avec succès (j'ai d'abord dû supprimer certains anciens liens symboliques), j'ai pu installer avec succès le gem RMagick


Hi-fives massives et câlins. C'était mon problème.
Brandon McKay

Je pense que tu veux direbrew install pkgconfig
Nate Symer

Merci Nathaniel - vous avez raison. J'ai mis à jour le message.
Tim Bull

7

Cela a fonctionné pour moi sur Mac OsX

Installez Imagemagick:

brew remove imagemagick
brew install imagemagick

Assurez-vous que pkg-config est correctement lié:

brew uninstall pkg-config
brew install pkg-config
brew unlink pkg-config && brew link pkg-config

Installer la gemme

gem install rmagick

7

Pour les utilisateurs d' Ubuntu : cela ne se fera jamais directement sur Ubuntu. Vous devez d'abord installer les packages pour exécuter cette commande ...:

sudo apt-get install libmagickwand-dev  

... puis installez:

gem install rmagick

Vous pouvez rencontrer le même problème, pour cela, essayez de vider votre référentiel apt et de supprimer d'abord les paquets cassés:

sudo apt-get update
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove

Si le système identifie des packages endommagés, supprimez-les de force (remplacez-les package_namepar les vôtres):

sudo dpkg --remove -force --force-remove-reinstreq package_name

Ensuite, réinstallez à nouveau les packages manquants. :)


7

Un problème pour moi était que rmagick est obsolète et n'est pas mis à jour régulièrement. Si vous avez une version trop récente d'ImageMagick, il se peut qu'elle ne soit pas compatible. Vérifiez votre version d'ImageMagick en utilisant les éléments suivants:

$ convert --version

Si la version ImageMagick est> 7, elle n'est pas compatible avec rmagick. L'utilisateur recevra des erreurs telles que

Can't install RMagick 2.16.0. Can't find MagickWand.h.
*** extconf.rb failed *** 

Revenez à la version six d'ImageMagick jusqu'à ce qu'ils mettent à jour rmagick pour être compatible avec la version sept d'ImageMagick. Quelqu'un a hébergé la version appropriée (6) dans une gemme distincte - «imagemagick @ 6».

Si vous avez besoin de rmagick pour fonctionner mais que vous disposez actuellement d'une version imagemagick 7 ou supérieure, voici les étapes à suivre pour changer:

$ gem install imagemagick@6
$ brew unlink imagemagick
$ brew link imagemagick@6 --force

6

M'a aidé sur Debian Wheezy 64bit

 apt-get install libmagickcore-dev libmagickwand-dev

4

Essayez de réinstaller à la fois Imagemagick et PkgConfig. Cela devrait résoudre le problème pour les Mavericks

  • brew update && brew upgrade
  • brew reinstall imagemagick
  • brew reinstall pkgconfig

2

J'avais vraiment du mal avec cela sur OS X Mountain Lion (après la mise à niveau de Lion) et aucune des suggestions concernant C_INCLUDE_PATH, PKG_CONFIG_PATH, dans divers fichiers, etc., ne fonctionnait. Le même jour, j'ai mis à niveau vers Mountain Lion, j'ai également mis à niveau XCode vers 4.5.2, mais je n'y ai pas vraiment réfléchi.

Finalement, j'ai arrêté d'essayer d'installer RMagick et j'ai dû transmettre le travail à un collègue.

Puis, par hasard, j'ai trouvé que j'essayais d'utiliser l'installation de bundle sur un autre projet et je n'ai pas pu installer le gem json car "make" n'a pas pu être trouvé. Je me suis renseigné et j'ai trouvé que vous deviez accéder à XCode -> Préférences -> Téléchargements et installer les outils de ligne de commande pour recommencer. Le joyau json s'est bien installé.

Puis j'ai fait une pause ... et j'ai essayé

gem install rmagick

Encore une fois. Cela a parfaitement fonctionné.


2

pour une application basée sur des rails, j'ai trouvé ceci

sudo apt-get install -y libmagickwand-6-headers
C_INCLUDE_PATH=/usr/include/ImageMagick-6 gem install rmagick
bundle update rmagick
bundle install

travaillé sur debian jessie


1
C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.7-6/include/ImageMagick gem install rmagick

1

Je suis tombé sur cela parce que j'avais exécuté l'assistant de migration d'OS X et que rien n'a été relié après la migration. Vous devez vérifier la sortie de Wand-config --ldflags --libs. Dans mon cas, cela a donné:

$ Wand-config --ldflags --libs
/usr/local/bin/Wand-config: line 50: pkg-config: command not found
/usr/local/bin/Wand-config: line 53: pkg-config: command not found

Après avoir relié pkg-config, libpng et libfreetype, cela est devenu:

$ Wand-config --ldflags --libs
-L/usr/local/Cellar/imagemagick/6.8.8-9/lib -lMagickWand-6.Q16 -lMagickCore-6.Q16 
-L/usr/local/Cellar/imagemagick/6.8.8-9/lib -lMagickWand-6.Q16 -lMagickCore-6.Q16 

Puis:

$ gem install rmagick
Building native extensions.  This could take a while...
Successfully installed rmagick-2.13.2
Parsing documentation for rmagick-2.13.2
Done installing documentation for rmagick after 4 seconds
1 gem installed

1

Sous linuxOS:

C_INCLUDE_PATH=/usr/local/include/ImageMagick-6/ gem install rmagick

Construire des extensions natives. Ça pourrait prendre un moment...

ERROR:  Error installing rmagick:
    ERROR: Failed to build gem native extension.

        /home/vagrant/.rvm/rubies/ruby-1.9.3-p0/bin/ruby extconf.rb
...
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'

puis:

export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"

dans mon fichier .bashrc pour récupérer MagickCore.pc, puis j'ai créé deux liens symboliques:

ln -s /usr/local/include/ImageMagick/wand /usr/local/include/ImageMagick-6/wand
ln -s /usr/local/include/ImageMagick/magick /usr/local/include/ImageMagick-6/magick

Maintenant:

$ gem install rmagick
Building native extensions.  This could take a while...
Successfully installed rmagick-2.13.2
1 gem installed

boum tout fonctionne bien.


1

Chez Arch Linux, après avoir installé imagemagick @ 6, gem n'a pas pu installer le paquet rmagick et a obtenu une erreur ci-dessous.

Can't install RMagick 2.16.0. Can't find MagickWand.h

A travaillé pour moi en utilisant les étapes ci-dessous

  1. ajout du chemin pkgconfig à .bashrc

    export PKG_CONFIG_PATH = "/ usr / lib / imagemagick6 / pkgconfig"

  2. Créé deux liens symboliques comme ci-dessous

    ln -s / usr / include / ImageMagick-6 / wand / usr / include / ImageMagick-6 / wand

    ln -s / usr / local / include / ImageMagick / magick / usr / include / ImageMagick-6 / magick


2
Arch ne conserve généralement pas les anciennes versions comme celle-ci (je n'étais pas clair sur ce que signifiait imagemagick @ 6 ci-dessus), mais c'était vraiment facile pour ma boîte Arch - il existe un package appelé imagemagick6disponible dans extra; installez simplement cela et il supprimera imagemagick(c.-à-d. que la v7 sera rétrogradée à la v6 en place)
jaustin

@jaustin hier, j'ai déjà mentionné ici "gem n'a pas pu installer le paquet"
Mizanur Rahman Mojumder

1
Je ne parlais pas de l'installation de gemmes (directement); mon commentaire concernait la rétrogradation du paquet arch vers imagemagick 6. c'est-à-dire qu'il n'y a pas besoin de tout ce PKG_CONFIG .... trucs, simplement pacman -S imagemagick6(en supposant que vous êtes d'accord avec la rétrogradation).
jaustin

0

J'ai eu du mal à faire fonctionner ce même problème lorsque j'avais une installation ImageMagick par défaut sur OSX 10.8 (pas de homebrew ou macports). Aucune combinaison des suggestions dans ce fil ou des fils liés à partir de ce fil n'a fonctionné pour moi (modifier les chemins pour mon installation locale bien sûr).

J'ai simplement supprimé l'installation par défaut d'ImageMagick 6, puis réinstallé avec macports. Mon installation de rmagick a fonctionné immédiatement après sans autre changement.


0

sur OSX Maverick 10.9.1, il m'a fallu des années pour le comprendre, mais j'ai résolu ces problèmes de la manière suivante:

nano /etc/paths

modifié:

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

dans:

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

que ce truc local, comme «infusion», est chargé en premier.

maintenant je frappe 'brew doctor' dans le terminal, pour voir s'il y a quelque chose de foiré

si vous obtenez le résultat suivant, votre système est prêt à infuser. tout va bien. sinon, il vous dira quoi faire. Comme expulser des trucs non mélangés, des bibliothèques cassées, des liens symboliques propres et tout le reste.

Lorsque vous êtes prêt à brasser, vous avez besoin de ghostscript (pour pdfs), libpng, imagemagick via brew.

alors vous pouvez heureusement taper: 'gem install rmagick', au cas où vous n'auriez pas tué votre configuration ruby. Mais c'est facile à réinstaller via votre infusion nettoyée.

PS: une autre commande utile est: 'which convert', pour vous montrer quelle version d'imagemagick est utilisée par le système.

ainsi que --version

donc si vous avez installé git via brew et que vous faites 'git --version' et qu'il retourne une version Apple git, votre chemin de chargement est cassé ...


0

Sous Mac OS X 10.9, essayez de mettre à jour votre Xcode s'il y a un avertissement à ce sujet.
$ brew doctor
I vous avez trouvé un avertissement, faites:
$ sudo / Developer / Library / uninstall-developer-folder

Ensuite , essayez:
$ bundle installer à
nouveau

Cela a bien fonctionné pour moi.


0

Sur CentOS 6.5 x64, c'était assez simple:

yum install ImageMagick ImageMagick-devel

gem install rmagick -v '2.13.2'


0

Toutes les options de brassage n'ont pas réussi à installer rmagick 2.13.1 sur yosemite 10.10

cela a fonctionné
obtenir le dernier RVM

\ curl -sSL https://get.rvm.io | bash -s stable --ruby rvm install 2.1.1 rvm use 2.1.1

téléchargez et installez le fichier de package http://cactuslab.com/imagemagick

(J'ai utilisé pacifist pour installer)

Confirmer l'emplacement du fichier MagickCore.pc

mdfind magickcore.pc

par exemple. /opt/ImageMagick/lib/pkgconfig/MagickCore.pc

Téléchargez manuellement le fichier rmagick-2.15.2.gem https://rubygems.org/gems/rmagick/versions/2.15.2

à partir de ce répertoire

sudo C_INCLUDE_PATH = / opt / ImageMagick / include / ImageMagick-6 / PKG_CONFIG_PATH = / opt / ImageMagick / lib / pkgconfig gem install --local rmagick-2.15.2.gem

Si vous rencontrez des problèmes avec le programme d'installation du bundle, vous vous plaignez toujours de la version 2.13.1

Dans votre fichier gem / fichier gem.lock, mettez à niveau TOUTES les dépendances

rmagick (2.13.1) -> rmagick (> = 2.15.2)


0

Vous avez la même erreur pour la construction d'image alpine 3.9. Il est livré avec ImageMagick 7.0.8.38-r0

Pour résoudre ce problème, vous utilisez soit Alpine 3.5 avec ImageMagick 6.9.6.8-r1 :

FROM alpine:3.5

Ou installez ImageMagick 6.9.6.8-r1 avec le référentiel de packages pour 3.5:

RUN apk add imagemagick-dev=6.9.6.8-r1 --repository http://dl-3.alpinelinux.org/alpine/v3.5/main/

Il existe un problème ouvert dans le référentiel rmagick concernant les versions ayant échoué pour ImageMagick 7.0.x. alors j'espère qu'il sera bientôt corrigé.


0

Peut-être que vous installez ImageMagick version 7.xx qui générera différents noms de dossier dans votre usr/lib/local/include/ImageMagick7.x.xdossier.

Dans la version ImageMagick6.xx que nous avons magick, du wandnom des dossiers, où dans la version ImageMagick7.xx ont nommé ce MagickCore, MagickWand. Donc, cette mise à jour pose le problème dans certaines installations de gemmes comme ici. Qui utilise magick/some_header.houwand/some_header.h (signifie qu'ils ne sont pas mis à jour avec la nouvelle version 7.xx ImageMagick).

C'est pourquoi nous obtenons cette erreur:


    checking for outdated ImageMagick version (<= 6.4.9)... no
    checking for presence of MagickWand API (ImageMagick version >= 6.9.0)... no
     .... 
    checking for wand/MagickWand.h... no

et dans le fichier journal quelque chose comme ceci:

error: 'MagickCore/method-attribute.h' file not found
#include "MagickCore/method-attribute.h"
         ^

Solution

Installez la version ImageMagick6.xx dans votre système à partir du site officiel: https://www.imagemagick.org/download/ et installez-la en utilisant ces commandes (après extraire zip / tar):

./configure
make 
make install

Alors fais

gem install rmagick

Ça va marcher.


Vous devrez peut-être également définir les liens symboliques suivants ici avant de pouvoir fonctionner:

ln -s /usr/local/lib/libMagickWand-6.Q16.so.6 /home/marcelo/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/extensions/x86_64-linux/2.2.0-static/rmagick-2.16.0/libMagickWand-6.Q16.so.6
sudo ln -s /usr/local/lib/libMagickWand-6.Q16.so.6 /usr/lib
ln -s /usr/local/lib/libMagickCore-6.Q16.so.6 /home/marcelo/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/extensions/x86_64-linux/2.2.0-static/rmagick-2.16.0/libMagickCore-6.Q16.so.6
sudo ln -s /usr/local/lib/libMagickCore-6.Q16.so.6 /usr/lib
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.