ImageMagick MacOS安装问题

问题

MAC上python调用ImageMagick时遇到以下问题

.This error can be due to the fact that ImageMagick is not installed on your computer, or (for Windows users) that you didn't specify the path to the ImageMagick binary in file conf.py, or that the path you specified is incorrect
(no such file), '/opt/homebrew/opt/little-cms2/lib/liblcms2.2.dylib' (no such file)

表示本地没有安装ImageMagick

解决

来到官网进行安装

https://imagemagick.org/script/download.php

这里有两种方式

一种直接用homebrew进行安装

brew install imagemagick

一种是用编译好的二进制文件
image.png

先尝试了用编译好的二进制文件,执行时发现会有macOS系统安全警告提示

image.png

这就很烦了,还需要设置允许来自未知开发者的应用程序等一堆选项。

改了一堆操作后放弃了。

直接使用homebrew进行安装

brew install imagemagick

安装好的imagemagick路径

/opt/homebrew/Cellar/imagemagick/

python中设置的环境变量

IMAGEMAGICK_BINARY = os.getenv('IMAGEMAGICK_BINARY', 'auto-detect')

安装好后可以使用。

那么问题来了,我希望换个路径调用imagemagick,比如将imagemagick放到项目目录内,而不是放到/opt/homebrew/目录内。

imagemagick文件直接拷贝到项目目录,并指定IMAGEMAGICK_BINARY环境变量是不行的。

会报错

(no such file), '/opt/homebrew/opt/little-cms2/lib/liblcms2.2.dylib' (no such file)

看着像liblcms2.2.dylib库没找到

最终的解决方法:

其实除了IMAGEMAGICK_BINARY外,还需要额外设置三个环境变量

  • DYLD_LIBRARY_PATH
  • MAGICK_CONFIGURE_PATH
  • MAGICK_CODER_MODULE_PATH

含义:

DYLD_LIBRARY_PATH指定了动态链接器应该搜索共享库(.dylib 文件)的额外路径。
MAGICK_CONFIGURE_PATH指定了 ImageMagick配置文件路径。
MAGICK_CODER_MODULE_PATH指定了 ImageMagick编码器和解码器模块路径。
image.png
完整的路径参考

export IMAGEMAGICK_BINARY="/ImageMagick/7.1.1-36/bin/magick"
export DYLD_LIBRARY_PATH="ImageMagick/7.1.1-36/lib"
export MAGICK_CONFIGURE_PATH="ImageMagick/7.1.1-36/lib/ImageMagick/config-Q16HDRI"
export MAGICK_CODER_MODULE_PATH="ImageMagick/7.1.1-36/lib/ImageMagick/modules-Q16HDRI/coders"

由于不想将imagemagick安装在默认路径下,所以花了些时间去解决这个问题。

如果无所谓的话,直接brew install imagemagick完事。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值