python wand.image 无法识别
python wand.image is not recognized
我安装了 Imagemagic(32 位和 64 位版本都试过了),然后使用 pip 安装 wand,我还设置了 Magick_Home 环境。变量到 imagemagic 地址但是当我 运行
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\Anaconda2\lib\site-packages\wand\image.py", line 20, in <module>
from .api import MagickPixelPacket, libc, libmagick, library
File "c:\Anaconda2\lib\site-packages\wand\api.py", line 205, in <module>
'Try to install:\n ' + msg)
ImportError: MagickWand shared library not found.
You probably had not installed ImageMagick library.
Try to install:
http://docs.wand-py.org/en/latest/guide/install.html#install-imagemagick-on-windows
ImageMagick Version 7 是最近的主要版本。 wand(和其他绑定)背后的社区需要一些时间来更新核心库。
现在,您必须安装版本 6 的最新版本(ImageMagick-6.9.8-9-Q16-x64-dll.exe) from http://www.imagemagick.org/download/binaries/
我找到了解决办法。
问题是:
Wand 尝试在 /usr/local/lib/
中找到这样的文件:libMagickWand.dylib
但是如果你用 Homebrew 安装 ImageMagick,生成的文件是 libMagickWand-6。Q16.dylib
而 Wand 永远找不到它。
所以,你有 2 个解决方案:
- 创建一个符号 link 从 libMagickWand-7.Q16.dylib 到 libMagickWand.dylib
- 您可以通过 MacPorts 安装或从测试他们创建文件的二进制文件安装。
我已经从以下位置为 The Capitan 安装了 ImageMagick:
http://cactuslab.com/assets/installers/ImageMagick-6.9.1-0.pkg.zip
我声明:
export MAGICK_HOME=/opt/ImageMagick
对于 mac 上的那些使用自制软件的人,Wand 似乎不支持 imagemagick 7,正如其他答案中提到的那样。
有一个new brew formula for Imagemagick 6可以用来同时安装旧版本:
brew install imagemagick@6
如其他答案中所述,为这个新安装的 dylib 文件创建一个符号链接,以使一切正常。
ln -s /usr/local/Cellar/imagemagick@6/<your specific 6 version>/lib/libMagickWand-6.Q16.dylib /usr/local/lib/libMagickWand.dylib
在 Sierra 上测试过,似乎工作正常。
对我来说 Mac 我不得不(发现 Wand 在 Wand 源中寻找 MAGICK_HOME):
export MAGICK_HOME="/usr/local/Cellar/imagemagick@6/6.9.9-31"
那是在安装 imagemagick 版本 6 之后。我查看了 运行 pip3 install Wand
之后安装的 Wand 的 Python 源代码。脚本正在寻找 imagemagick 6(我试图将 7 添加到它寻找的版本列表中,但出现 "wrong version" 错误)。
brew tap homebrew/versions
brew install imagemagick@6
现在,安装了 imagemagick 版本 6,Wand 在 $MAGICK_HOME
中查找库。
我安装了 Imagemagic(32 位和 64 位版本都试过了),然后使用 pip 安装 wand,我还设置了 Magick_Home 环境。变量到 imagemagic 地址但是当我 运行
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "c:\Anaconda2\lib\site-packages\wand\image.py", line 20, in <module> from .api import MagickPixelPacket, libc, libmagick, library File "c:\Anaconda2\lib\site-packages\wand\api.py", line 205, in <module> 'Try to install:\n ' + msg) ImportError: MagickWand shared library not found. You probably had not installed ImageMagick library. Try to install: http://docs.wand-py.org/en/latest/guide/install.html#install-imagemagick-on-windows
ImageMagick Version 7 是最近的主要版本。 wand(和其他绑定)背后的社区需要一些时间来更新核心库。
现在,您必须安装版本 6 的最新版本(ImageMagick-6.9.8-9-Q16-x64-dll.exe) from http://www.imagemagick.org/download/binaries/
我找到了解决办法。 问题是:
Wand 尝试在 /usr/local/lib/
中找到这样的文件:libMagickWand.dylib但是如果你用 Homebrew 安装 ImageMagick,生成的文件是 libMagickWand-6。Q16.dylib 而 Wand 永远找不到它。
所以,你有 2 个解决方案:
- 创建一个符号 link 从 libMagickWand-7.Q16.dylib 到 libMagickWand.dylib
- 您可以通过 MacPorts 安装或从测试他们创建文件的二进制文件安装。
我已经从以下位置为 The Capitan 安装了 ImageMagick: http://cactuslab.com/assets/installers/ImageMagick-6.9.1-0.pkg.zip 我声明:
export MAGICK_HOME=/opt/ImageMagick
对于 mac 上的那些使用自制软件的人,Wand 似乎不支持 imagemagick 7,正如其他答案中提到的那样。
有一个new brew formula for Imagemagick 6可以用来同时安装旧版本:
brew install imagemagick@6
如其他答案中所述,为这个新安装的 dylib 文件创建一个符号链接,以使一切正常。
ln -s /usr/local/Cellar/imagemagick@6/<your specific 6 version>/lib/libMagickWand-6.Q16.dylib /usr/local/lib/libMagickWand.dylib
在 Sierra 上测试过,似乎工作正常。
对我来说 Mac 我不得不(发现 Wand 在 Wand 源中寻找 MAGICK_HOME):
export MAGICK_HOME="/usr/local/Cellar/imagemagick@6/6.9.9-31"
那是在安装 imagemagick 版本 6 之后。我查看了 运行 pip3 install Wand
之后安装的 Wand 的 Python 源代码。脚本正在寻找 imagemagick 6(我试图将 7 添加到它寻找的版本列表中,但出现 "wrong version" 错误)。
brew tap homebrew/versions
brew install imagemagick@6
现在,安装了 imagemagick 版本 6,Wand 在 $MAGICK_HOME
中查找库。