执行命令
# convert -density 300 -quality 100 test.pdf out.png
已杀死
很郁闷
解决方式一
重新重新编译ImageMagick最新版,增加参数:
–disable-openmp
, 不使用多线程
查看版本
$ convert -version
Features:openMP
在页面查找下载地址:
我下载是版本是:ImageMagick-7.0.8-24
安装步骤
# Linux源码下载
wget https://imagemagick.org/download/ImageMagick.tar.gz
# 解压
tar -xvzf ImageMagick.tar.gz
# 新建安装文件路径
mkdir ImageMagick-7.0.8
# 进入源码
cd ImageMagick-7.0.8-24
# 设置
./configure --prefix=/home/ImageMagick-7.0.8 --enable-shared --enable-threads=posix --with-system-zlib --enable-__cxa_atexit --disable-openmp
# 编译安装
make & make install
# 添加软链接
ln -s /home/ImageMagick-7.0.8/bin/convert /usr/bin/convert
再次查看版本
# convert -version
Version: ImageMagick 7.0.8-23 Q16 x86_64 2019-01-07 https://imagemagick.org
Copyright: © 1999-2019 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI
Delegates (built-in): jng jpeg lzma png xml zlib
不过好像没啥用,还是会出现
已杀死
的提示
参考:
ImageMagick 解决多线程(openMP)运行时导致CPU暴增到100%的方法
解决方式二
设置运行参数
# convert -limit memory 2mb -limit map 2mb -density 300 -quality 100 test.pdf out.png
这个方式基本可以解决问题,缺点就是速度较慢,和原先比较耗时*3
参考:
https://github.com/ImageMagick/ImageMagick/issues/327