The following perl code best illustrates the problem:
Code: Select all
#!/usr/bin/perl
use Image::Magick;
my($image, $x);
$image = Image::Magick->new;
my ($a1,$b1,$c1,$d1) = $image->Ping('SMC_cover_1.jpg');
print "test1=[$a1][$b1][$c1][$d1]\n";
$image->Read('SMC_cover_1.jpg');
my $blob = $image->ImageToBlob();
my ($a2,$b2,$c2,$d2) = $image->Ping(blob=>$blob);
print "test2=[$a2][$b2][$c2][$d2]\n";
test1=[1587][927][757377][JPEG]
test2=[][][][]
On dev2, this code produces:
test1=[1587][927][757377][JPEG]
test2=[1587][927][797382][JPEG]
In other words, pinging an image directly works just fine, but on dev1 pinging an image blob *does not work*. On dev2, everything is aok. Note that the blob does exist, because I *can* do other tasks with it. I just can't ping it.
I've tried to compile the delegates with the same versions as are provided in the ImageMagick ftp repository. I used the exact same jpeg-6b library on dev1 and 2. When I configured ImageMagick, I made sure that everything was enabled exacept for gs-lib (although Ghostscript 8.15 is installed on both).
The version of IM is 6.3.3-1.
Does anyone know why this might be occurring on my dev1 box? Everything that I can think of has been made equal between the 2 boxes. Dev1 is a Gentoo distro and dev2 is a Redhat ES distro, but I wouldn't imagine that would make too much difference.
Thanks,
-Mike