升级ImageMagick RHEL 5

我们已经使用ImageMagick很长一段时间没有任何麻烦。

但是,今天我们可以通过一个PDF格式转换成一个jpg的缩略图,这将会失败:

$ convert example.pdf -resize 600 thumb.jpg

 Error: /rangecheck in --run-- Operand stack: --dict:12/21(L)-- Sh5 0.0 --nostringval-- true 14460 0 --nostringval-- Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1846 1 3 %oparray_pop 1845 1 3 %oparray_pop 1829 1 3 %oparray_pop --nostringval-- --nostringval-- 2 1 1 --nostringval-- %for_pos_int_continue --nostringval-- --nostringval-- false 1 %stopped_push --nostringval-- --nostringval-- Dictionary stack: --dict:1158/1684(ro)(G)-- --dict:1/20(G)-- --dict:75/200(L)-- --dict:75/200(L)-- --dict:106/127(ro)(G)-- --dict:285/300(ro)(G)-- --dict:22/25(L)-- --dict:4/6(L)-- --dict:25/40(L)-- --dict:1/1(ro)(G)-- --dict:9/15(L)-- --dict:5/5(L)-- --dict:2/5(L)-- --dict:1/1(ro)(G)-- --dict:9/15(L)-- Current allocation mode is local Last OS error: 2 GPL Ghostscript 8.70: Unrecoverable error, exit code 1 convert: Postscript delegate failed `example.pdf'. convert: missing an image filename `thumb.jpg'. 

所以在一个testing环境(Ubuntu)上,我能够安装ImageMagick的最新版本,并能够将此pdf – > jpg转换得很好。

麻烦的是在RHEL上升级这个软件包。 使用yum没有可用于ImageMagick的更新。 所以我这样做了:

 wget http://www.imagemagick.org/download/linux/CentOS/x86_64/ImageMagick-6.8.4-4.x86_64.rpm yum erase ImageMagick yum install --nogpgcheck ImageMagick-6.7.9-6.x86_64.rpm 

注意: yum erase除去了ImageMagick-devel以及ImageMagick软件包。

但现在我试图运行任何命令行php脚本时得到这个消息: Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/imagick.so' - libWand.so.10: cannot open shared object file: No such file or directory in Unknown on line 0

而我很紧张,重新启动Apache,因为我们的生产networking应用程序依靠php-imagick调整图像大小。

我怎样才能让PHPfind新的ImageMagick

你不能。 您将需要重新编译php对较新的ImageMagick,或(更快,更安全的解决scheme)再次降级imagemagick。

这会让你花些时间更新到RHEL 6,它有一个更新的imagemagick。