从 ubuntu 包安装支持 jpeg 的 imagemagick

mma*_*all 9 ubuntu imagemagick apt

我在 ubuntu 10.04 (lucid) 上安装了 libjpeg62 和 imagemagick。

使用 gif 运行识别命令有效,但使用 jpeg 运行它会产生以下错误:

identify: no decode delegate for this image format `stream,13307,0.jpg' @ error/constitute.c/ReadImage/532.
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这一问题?谢谢!

小智 18

好吧,在花了一整天试图弄清楚这一点之后,我终于明白了,我会发布它,以防其他人遇到类似的问题。这是它的开始方式和解决方案;我正在运行 Ubuntu 9.10、Karmic Koala 并安装了当前版本的 ImageMagick 并且运行良好,然后我不得不通过运行将我的 ImageMagick 更新到最新版本;

sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)

那是我无法再通过我的 ruby​​ on rails 应用程序上的回形针上传 jpg 的时候。解决办法是去获取最新的ImageMagick版本并自己构建;

wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar xvfz ImageMagick.tar.gz
cd ImageMagick-*
./configure --disable-shared
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

同样在运行命令后./configure --disable-shared,查看最后 50 行并确保您看到;

JPEG v1           --with-jpeg=yes       yes
JPEG-2000         --with-jp2=yes        yes
Run Code Online (Sandbox Code Playgroud)

如果它说不,那么您需要安装libjpeg62并且可能需要安装libjpeg62-dev。这对我有用,希望它可以帮助其他人。

  • 这很有帮助,谢谢。就我而言,我安装了 `libjpeg62`,但还必须安装 `libjpeg62-dev` 才能使其正常工作(对于 JPEG 2000,还有 `libjasper-runtime` 和 `libjasper-dev`)。 (5认同)