執行指令
# 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