bla*_*zoo 153 ruby install rmagick
当我尝试安装rmagick时,我收到以下错误消息:
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.
Run Code Online (Sandbox Code Playgroud)
我使用的是Mac OSX 10.6.8,ruby 1.9.2p290,rvm 1.10.2.
任何人都可以帮我解决这个问题.
Spo*_*tor 271
如果您在Ubuntu上,安装此软件包是为我修复的:
sudo apt-get install libmagickwand-dev
Run Code Online (Sandbox Code Playgroud)
shi*_*eya 136
看起来像ImageMagick 7改变了包含文件路径.
在构建时rmagick,因为它包含文件,因为wand/MagickWand.h没有解决方法.现在看起来像是坚持使用ImageMagick 6.
在Mac OS X上(我在Sierra上测试过),我使用了HomeBrew的versionstap:
brew tap homebrew/versions
brew install imagemagick@6
Run Code Online (Sandbox Code Playgroud)
然后,使用上面安装中显示的路径:
PKG_CONFIG_PATH=/usr/local/opt/imagemagick@6/lib/pkgconfig gem install rmagick
Run Code Online (Sandbox Code Playgroud)
使用ImageMagick 6安装.
Fio*_*ins 78
我不想搞乱环境变量因为我希望bundler能够在CI机器上自己编译这个gem.相反,我使用Homebrew来安装pkg-config:
brew install pkgconfig
下次我尝试编译RMagick gem时,发现头文件没有问题.
(这是山狮上的pkg-config 0.28,ImageMagick 6.8.0-10和RMagick 2.13.2.)
Dar*_*eng 69
跑步时遇到了类似的问题
$ gem install rmagick
Run Code Online (Sandbox Code Playgroud)
首先,你是否安装了imagemagick?如果您不确定,请运行
$ convert --version
Run Code Online (Sandbox Code Playgroud)
如果你这样做,你可能要么用fink或macports安装它(也许是自制软件?).发生的事情是rvm找不到imagemagick目录.
阅读 https://superuser.com/questions/361435/i-have-compiled-imagemagick-on-my-centos-and-rmagick-wont-install后, 我通过添加导出了imagemagick路径
$ export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig:$PKG_CONFIG_PATH"
Run Code Online (Sandbox Code Playgroud)
到我的〜/ .bash_profile,获取新的配置文件,然后再次运行gem install rmagick.
在我这样做之后它对我有用.
小智 46
修复此设置当前imagemagick安装的包含路径:
用brew安装ImageMagick
brew install imagemagick
Run Code Online (Sandbox Code Playgroud)
找到图书馆
$ mdfind MagickWand.h
/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/wand/MagickWand.h
Run Code Online (Sandbox Code Playgroud)
安装rmagick gem
$ C_INCLUDE_PATH=/path/MagickWand.h gem install rmagick
Run Code Online (Sandbox Code Playgroud)
例:
$ C_INCLUDE_PATH=/usr/local/Cellar/imagemagick/6.7.5-7/include/ImageMagick/ gem install rmagick
Run Code Online (Sandbox Code Playgroud)
tob*_*jim 38
我把它标记为最喜欢的,因为它似乎又回到了我需要安装RMagick所需的每个新系统(时间已过,版本号已滚动).
Mac OS X 10.8.4
rvm 1.22.3
红宝石2.0.0-P247
安装Xcode 4.6.3开发人员工具
$ 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
Run Code Online (Sandbox Code Playgroud)
非常感谢所有在上面添加了有用答案的人!
Ada*_*ant 28
Mac用户使用brew
如果你可以使用ImageMagick的v6而不是7,你可以尝试这个
brew install imagemagick@6 --force && brew link imagemagick@6 --force
Run Code Online (Sandbox Code Playgroud)
请注意,这将取消现有IM安装的链接,因此如果您的计算机上有其他项目使用ImageMagick没有问题,请务必小心.
fre*_*gas 12
对于我自己和他人的启发,我通过使用建议xonico得到了关于magicwand.h的错误.MDFind加上C_INCLUDE_PATH.然而,它给了我一个关于MagickCore.pc的错误.我完成这项工作的最终命令必须包括两者:
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
Run Code Online (Sandbox Code Playgroud)
显然,您的路径会有所不同,具体取决于您是否使用像我这样的brew以及您正在安装的imagemagick版本.此外,正如其他人所提到的那样,必须安装xcode命令行工具.
感谢大家的帖子!我鼓励你的答案,因为它有助于我的!
rus*_*ils 11
对于Ubuntu:
sudo apt-get install imagemagick libmagickwand-dev
gem install rmagick
Run Code Online (Sandbox Code Playgroud)
小智 8
更新到Maverics后我遇到了问题.它失去了很多联系.在我的情况下,我不得不刷新到pkg-config的链接
brew unlink pkg-config
brew link pkg-config
Run Code Online (Sandbox Code Playgroud)
然后安装rmagick就像一个魅力.
我更新到Mountain Lion并开始遇到同样的问题.我不得不重新安装brew,XCode,XCode工具 - 几乎整个环境!
我最终使用上面的phopkins的答案解决了这个问题...
brew install pkgconfig
Run Code Online (Sandbox Code Playgroud)
一旦成功完成(我必须首先删除一些旧的符号链接)然后我能够成功安装RMagick gem
对于Ubuntu用户:它永远不会直接在Ubuntu上完成.您应该首先安装包来运行此命令...:
sudo apt-get install libmagickwand-dev
Run Code Online (Sandbox Code Playgroud)
...然后安装:
gem install rmagick
Run Code Online (Sandbox Code Playgroud)
您可能会遇到同样的问题,请尝试清除apt存储库并首先删除任何损坏的包:
sudo apt-get update
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
Run Code Online (Sandbox Code Playgroud)
如果系统识别出任何损坏的包,请强行将其删除(替换package_name为您自己的包):
sudo dpkg --remove -force --force-remove-reinstreq package_name
Run Code Online (Sandbox Code Playgroud)
然后再次重新安装任何缺少的包.:)
这适用于Mac OsX
安装Imagemagick:
brew remove imagemagick
brew install imagemagick
Run Code Online (Sandbox Code Playgroud)
确保pkg-config正确链接:
brew uninstall pkg-config
brew install pkg-config
brew unlink pkg-config && brew link pkg-config
Run Code Online (Sandbox Code Playgroud)
安装gem
gem install rmagick
Run Code Online (Sandbox Code Playgroud)
帮我在Debian Wheezy 64bit上
apt-get install libmagickcore-dev libmagickwand-dev
Run Code Online (Sandbox Code Playgroud)
对我来说一个问题是rmagick已经过时并且没有定期更新.如果你有一个新的ImageMagick版本,那么它可能不兼容.使用以下方法检查您的ImageMagick版本:
$ convert --version
Run Code Online (Sandbox Code Playgroud)
如果ImageMagick版本> 7,则与rmagick不兼容.用户将收到诸如此类的错误
Can't install RMagick 2.16.0. Can't find MagickWand.h.
*** extconf.rb failed ***
Run Code Online (Sandbox Code Playgroud)
回到ImageMagick的第六版,直到他们更新rmagick以兼容ImageMagick的第七版.有人在一个单独的宝石中托管了相应的版本(6) - 'imagemagick @ 6'.
如果你需要rmagick工作,但目前有一个imagemagick版本7或更高版本,这里是切换的步骤:
$ gem install imagemagick@6
$ brew unlink imagemagick
$ brew link imagemagick@6 --force
Run Code Online (Sandbox Code Playgroud)