由于前几天手贱,升级了一下homebrew下的formula,不当心把imagemagick升级到了7的版本,在运行项目的时候一直报错brew install freetype imagemagick
,找了好久才发如今wand库下的api.py文件中versions = '', '-6', '-Q16', '-Q8', '-6.Q16'
以及options = '', 'HDRI', 'HDRI-2'
,推测缘由是由于索引不到/usr/local/lib
中imagemagick7的相关库,尝试改了几回源码都没有解决问题,其实python的Wand库最新仍是0.4.4的版本,并不支持imagemagick7,,最后想办法把imagemagick降到6的版本。
可是homebrew安装指定版本又是一个大问题,查找的brew versions
命令已经被移除了。后来在stackoverflow上找到了一篇有用的回答,才最终解决问题。https://stackoverflow.com/que...python
homebrew把本身的formula都放在/usr/local/Cella/
下的文件中.api
imagemagick7在/usr/local/Cella/
下的名称为imagemagick
,imagemagick6的名称为imagemagick@6
,使用brew uninstall imagemagick
会卸载imagemagick7.若是没有安装过imagemagick的话,能够忽略这一步。bash
输入brew search imagemagick
会出现以下的显示,画勾的是已经安装的版本。this
FlyingpangdeMacBook-Pro:~ Flyingpang$ brew search imagemagick ==> Searching local taps... imagemagick@6 ✔ imagemagick ==> Searching taps on GitHub... ==> Searching blacklisted, migrated and deleted formulae...
若是没有安装imagemagick6的话,使用 brew install imagemagick@6
来安装。code
安装完之后,它会有以下的提示文字。orm
This formula is keg-only, which means it was not symlinked into /usr/local, because this is an alternate version of another formula. If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"' >> ~/.bash_profile For compilers to find this software you may need to set: LDFLAGS: -L/usr/local/opt/imagemagick@6/lib CPPFLAGS: -I/usr/local/opt/imagemagick@6/include For pkg-config to find this software you may need to set: PKG_CONFIG_PATH: /usr/local/opt/imagemagick@6/lib/pkgconfig
若是安装的是最新的版本,brew会自动给你作好符号连接。因为这个是旧版的,因此没有作连接。先按照提示运行echo 'export PATH="/usr/local/opt/imagemagick@6/bin:$PATH"' >> ~/.bash_profile
,运行完以后记得使用命令source ~/.bash_profile
让修改生效。
而后cd /usr/local/lib
,该目录下都是一些经常使用的库,你须要把刚装好的imagemagick@6下的全部lib移动到这边,lib的路径/usr/local/Cellar/imagemagick@6/6.9.9-23/lib
,注意,其中的6.9.9-23
根据你安装的版本改变。索引
FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickCore-6.Q16.dylib libMagickCore-6.Q16.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagick++-6.Q16.8.dylib libMagick++-6.Q16.8.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickCore-6.Q16.la libMagickCore-6.Q16.la FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagick++-6.Q16.a libMagick++-6.Q16.a FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickWand-6.Q16.5.dylib libMagickWand-6.Q16.5.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagick++-6.Q16.dylib libMagick++-6.Q16.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickWand-6.Q16.a libMagickWand-6.Q16.a FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagick++-6.Q16.la libMagick++-6.Q16.la FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickWand-6.Q16.dylib libMagickWand-6.Q16.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickCore-6.Q16.5.dylib libMagickCore-6.Q16.5.dylib FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickWand-6.Q16.la libMagickWand-6.Q16.la FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/libMagickCore-6.Q16.a libMagickCore-6.Q16.a FlyingpangdeMacBook-Pro:lib Flyingpang$ ln -s /usr/local/Cellar/imagemagick@6/6.9.9-23/lib/ImageMagick ImageMagick
如今wand库就能够直接用了。homebrew