[Image-SIG] PIL (libImaging) - Problems with jpeg decoder / libraries

Robin Munt magicbob@magic-fish.com
Wed, 21 May 2003 15:15:16 +0100 (BST)

Hola from Barcelona,

Spent the last day on this problem, not seeming to get
anywhere with it, hopefully someone has some ideas -
i've noticed that theres been a fair few posts with
this problem, searched thru them, but couldn't find a

I'm trying to install PIL to sit on Python (versions
2.1.3 & 2.2.2) on a Solaris 8 system.

I've followed the instructions on


and have confirmed that my zlib and jpeg libraries are
installed correctly.  Have also checked that PATH and
LD_LIBRARY_PATH are correctly configured.

In the libimaging directory i run

prompt> configure --with-zlib=/usr/local/lib \

This runs through the configure script which doesn't
see the JPEG libraries (according to the screen

"checking for jpeg_destroy_compress in -ljpeg...
(cached) no"

When I run the make, there are no JpegEncode.o or
JpegDecode.o files

OK, so i thought i'd edit the ImConfig.h by hand to
pick up the JPEG libraries.  Added the line

#define HAVE_LIBJPEG 1

Then I ran the make, which created a JpegEncode.o and
JpegDecode.o, but i'm certain that these haven't
compiled correctly (they are too small).  I continued
with the PIL compilation (editing the Makefile to
reflect the library locations), and ran the tests,
with the jpeg test failing with the classic traceback

  File "PIL/Image.py", line 255, in _getdecoder
    raise IOError("decoder %s not available" %
IOError: decoder jpeg not available
1 items had failures:
   1 of  40 in test.testimage
***Test Failed*** 1 failures.
*** 1 tests of 40 failed.

Have been through a lot of checks to make sure that
i've compiled the jpeg and zlib libraries correctly. 
I have another package which depends on 'jpeg' for
compilation (libwmf), the configure script for
this sees the jpeg libraries fine and the package
compiles no worries.  Also have double checked all the
environment settings.

Another strange twist is that i have a development
system where the jpeg and zlib libraries (and lots
more stuff!) have been installed from precompiled
Solaris packages straight into /usr/local/include and
/usr/local/lib.  And on this system the libImaging
compilation works ok.  Very strange !

Has anybody any ideas on where i might be going wrong
on this ?  Or how I might list library
locations/dependencies to try and figure out
the difference between my development machine (where
PIL compiles OK) and my Production machine (where it's
stuffed !).

Thanks for any help,



It's Samaritans' Week. Help Samaritans help others. 
Call 08709 000032 to give or donate online now at http://www.samaritans.org/support/donations.shtm