Skip Menu |

This queue is for tickets about the Imager CPAN distribution.

Report information
The Basics
Id: 32316
Status: resolved
Priority: 0/
Queue: Imager

People
Owner: Nobody in particular
Requestors: brianski [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in:
  • 0.60
  • 0.62
Fixed in: (no value)



Subject: perl Makefile.PL --disable ungif doesn't disable libungif
perl Makefile.PL --disable ungif is overridden by runtime checks for libungif. This is on a debian sarge system (but happens the same on debian etch and ubuntu gutsy): After a vanilla Imager install (except for the --disable ungif bit), I'm only getting minimally compressed from libungif: ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = Imager->new(); $img->read(file => "../../foo.png") or die $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls -l foo* -rw-r--r-- 1 ski web 3481728 2008-01-14 23:39 foo.gif But if I remove the libungif packages, viola: ski@editorial:~/tmp/Imager-0.62$ sudo dpkg -r libungif4-dev libungif4g (Reading database ... 42584 files and directories currently installed.) Removing libungif4-dev ... Removing libungif4g ... ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = Imager->new(); $img->read(file => "../../foo.png") or die $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls -l foo* -rw-r--r-- 1 ski web 179561 2008-01-14 23:40 foo.gif Bug if I then add the libungif packages back in, we're back to bloated images: ski@editorial:~/tmp/Imager-0.62$ sudo apt-get install libungif4-dev libungif4g [snip] ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = Imager->new(); $img->read(file => "../../foo.png") or die $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls -l foo* -rw-r--r-- 1 ski web 3481728 2008-01-14 23:47 foo.gif This is a real drag because we have a lot of image manipulation software on this machine, much of which depends on libungif, so we can't just nuke it.
Subject: Re: [rt.cpan.org #32316] perl Makefile.PL --disable ungif doesn't disable libungif
Date: Tue, 15 Jan 2008 18:02:17 +1100
To: Brian Szymanski via RT <bug-Imager [...] rt.cpan.org>
From: tonyc [...] cpan.org
On Tue, Jan 15, 2008 at 12:49:36AM -0500, Brian Szymanski via RT wrote: Show quoted text
> perl Makefile.PL --disable ungif is overridden by runtime checks for > libungif. This is on a debian sarge system (but happens the same on > debian etch and ubuntu gutsy): > > After a vanilla Imager install (except for the --disable ungif bit), I'm > only getting minimally compressed from libungif: > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > Imager->new(); $img->read(file => "../../foo.png") or die > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > -l foo* > -rw-r--r-- 1 ski web 3481728 2008-01-14 23:39 foo.gif > > But if I remove the libungif packages, viola: > > ski@editorial:~/tmp/Imager-0.62$ sudo dpkg -r libungif4-dev libungif4g > (Reading database ... 42584 files and directories currently installed.) > Removing libungif4-dev ... > Removing libungif4g ... > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > Imager->new(); $img->read(file => "../../foo.png") or die > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > -l foo* > -rw-r--r-- 1 ski web 179561 2008-01-14 23:40 foo.gif > > Bug if I then add the libungif packages back in, we're back to bloated > images: > ski@editorial:~/tmp/Imager-0.62$ sudo apt-get install libungif4-dev > libungif4g > [snip] > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > Imager->new(); $img->read(file => "../../foo.png") or die > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > -l foo* > -rw-r--r-- 1 ski web 3481728 2008-01-14 23:47 foo.gif > > > This is a real drag because we have a lot of image manipulation software > on this machine, much of which depends on libungif, so we can't just > nuke it.
Hi, This problem occurs because Debian's libungif includes a /usr/lib/libgif.so.4 symlink to libungif.so.4.1.4. If I run perl Makefile.PL --disable ungif, and look at the generated Makefile, the file only mentions "-lgif" with no mention of "-lungif". I've had a bit of a fiddle with it, the only way I could make it use a "real" libgif was to rename /usr/lib/libgif.so.4 out of the way, and make sure that the giflib headers/libraries were visible to Makefile.PL - either in /usr/local/{lib,include} or supplied via --incpath, --libpath. The real solution would be for Debian to package giflib in a way that doesn't conflict with libungif, but there doesn't seem to be much progress on that: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=392160 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=401287 Tony
On Tue Jan 15 02:14:27 2008, TONYC wrote: Show quoted text
> On Tue, Jan 15, 2008 at 12:49:36AM -0500, Brian Szymanski via RT wrote:
> > perl Makefile.PL --disable ungif is overridden by runtime checks for > > libungif. This is on a debian sarge system (but happens the same on > > debian etch and ubuntu gutsy): > > > > After a vanilla Imager install (except for the --disable ungif bit), I'm > > only getting minimally compressed from libungif: > > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > > Imager->new(); $img->read(file => "../../foo.png") or die > > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > > -l foo* > > -rw-r--r-- 1 ski web 3481728 2008-01-14 23:39 foo.gif > > > > But if I remove the libungif packages, viola: > > > > ski@editorial:~/tmp/Imager-0.62$ sudo dpkg -r libungif4-dev libungif4g > > (Reading database ... 42584 files and directories currently installed.) > > Removing libungif4-dev ... > > Removing libungif4g ... > > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > > Imager->new(); $img->read(file => "../../foo.png") or die > > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > > -l foo* > > -rw-r--r-- 1 ski web 179561 2008-01-14 23:40 foo.gif > > > > Bug if I then add the libungif packages back in, we're back to bloated > > images: > > ski@editorial:~/tmp/Imager-0.62$ sudo apt-get install libungif4-dev > > libungif4g > > [snip] > > ski@editorial:~/tmp/Imager-0.62$ perl -e 'use Imager; my $img = > > Imager->new(); $img->read(file => "../../foo.png") or die > > $img->errstr(); $img->write(file=>"foo.gif") or die $img->errstr()'; ls > > -l foo* > > -rw-r--r-- 1 ski web 3481728 2008-01-14 23:47 foo.gif > > > > > > This is a real drag because we have a lot of image manipulation software > > on this machine, much of which depends on libungif, so we can't just > > nuke it.
> > Hi, > > This problem occurs because Debian's libungif includes a > /usr/lib/libgif.so.4 symlink to libungif.so.4.1.4. > > If I run perl Makefile.PL --disable ungif, and look at the generated > Makefile, the file only mentions "-lgif" with no mention of "-lungif". > > I've had a bit of a fiddle with it, the only way I could make it use a > "real" libgif was to rename /usr/lib/libgif.so.4 out of the way, and > make sure that the giflib headers/libraries were visible to > Makefile.PL - either in /usr/local/{lib,include} or supplied via > --incpath, --libpath. > > The real solution would be for Debian to package giflib in a way that > doesn't conflict with libungif, but there doesn't seem to be much > progress on that: > > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=392160 > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=401287 > > Tony >
Yeah... Not an Imager bug. Feel free to close this bug report. FWIW, I wound up just dpkg -r'ing libungif4g on my debian boxes (they seem happy to use giflib instead, so far), altho on my ubuntu box which had explicit depends on libungif4g, I had to do a bit of a dance to make the work-around actually work around: http://skibrianski.googlepages.com/giflib-ubuntu.html