[Resolved] Xsane jpeg library conflict

Using applications, configuring, problems
Post Reply
Message
Author
ahoppin
Posts: 172
Joined: Mon 16 May 2011, 04:13

[Resolved] Xsane jpeg library conflict

#1 Post by ahoppin »

I'm setting up a scanner in Lucid 525 - Umax Powerlook 2100XL, Adaptec AIC7850 SCSI card. I can now scan, thanks to help from Chiron's generous help with getting Lucid to talk to the SCSI card - but saving the scans is not so easy.

I can save scans from xsane in .png format, but not in .tiff format. When I try to save from the xsane viewer, or scan directly to a file, xsane reports "Error during save."

With debug level set to 255 and xsane stared from the console, I get the following diagnostics:

JPEGLib: Wrong JPEG library version: library is 70, caller expects 62.
JPEGLib: Improper call to JPEG library in state 0.

It appears that the version of xsane bundled with Lucid 525 was compiled with the earlier 6.2 libraries, but I have the later 7.0libraries. It's possible that I installed 7.0 somewhere along the way, maybe as a dependency with some other program - though I don't see Jpeg 7.0 listed as an installed package in Puppy Package Manager.

Would it be safe to download and install Jpeg libraries 6.2? Can they coexist with 7.0, or would that break some other application that requires Jpeg 7.0?

Thanks for your patient help with this beginner.
Last edited by ahoppin on Sat 06 Aug 2011, 23:42, edited 1 time in total.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#2 Post by rcrsn51 »

If you look in /usr/lib, you will see that Lupu has both libjpeg7 and libjpeg62.

In the default setup, libjpeg.so points to libjpeg.so.62.0.0.

Maybe you have changed it so libjpeg.so now points to libjpeg.so.7.0.0.

If so, delete the libjpeg.so symlink and remake it.

ahoppin
Posts: 172
Joined: Mon 16 May 2011, 04:13

#3 Post by ahoppin »

Here is what I see in /usr/lib ...

ls -l libjpeg*
-rw-r--r-- 1 root root 165904 2010-03-12 09:22 libjpeg.a
-rw-r--r-- 1 root root 941 2010-03-12 09:22 libjpeg.la
lrwxrwxrwx 1 root root 17 2011-07-30 15:42 libjpeg.so -> libjpeg.so.62.0.0
lrwxrwxrwx 1 root root 17 2011-07-30 15:42 libjpeg.so.62 -> libjpeg.so.62.0.0
-rw-r--r-- 1 root root 128616 2011-04-01 22:16 libjpeg.so.62.0.0
lrwxrwxrwx 1 root root 16 2011-07-30 15:42 libjpeg.so.7 -> libjpeg.so.7.0.0
-rwxr-xr-x 1 root root 214660 2011-04-01 22:16 libjpeg.so.7.0.0

I tried

# chmod ugo+x libjpeg.so.62.0.0

But that didn't help. Xsane still gripes that

JPEGLib: Wrong JPEG library version: library is 70, caller expects 62.

Any other ideas? I'm stumped.

ahoppin
Posts: 172
Joined: Mon 16 May 2011, 04:13

#4 Post by ahoppin »

As a test, I moved libjpeg.so.7* out of /usr/lib. Xsane then complained that it could not load libjpeg.so.7.

# mkdir /root/sparelibs
# ls libjpeg.so.7*
libjpeg.so.7 libjpeg.so.7.0.0
# mv libjpeg.so.7* /root/sparelibs
# ls libjpeg*
libjpeg.a libjpeg.la libjpeg.so libjpeg.so.62 libjpeg.so.62.0.0
# xsane
xsane: error while loading shared libraries: libjpeg.so.7: cannot open shared object file: No such file or directory

I'm no expert but this suggests to me that the problem is an xsane bug - it loads libjpeg version 7, but then expects to call version 6.2.

I left libjpeg.so.7 hidden, and made a link from libjpeg.so.62 to libjpeg.so.7. Xsane now complains that it can't get the proper version info:

# ln libjpeg.so.62 libjpeg.so.7
# xsane
xsane: /usr/lib/libjpeg.so.7: no version information available (required by xsane)

TIFF saving now works, but Jpeg saving is broken.

Xsane is currently at version 0.998; the version supplied with Lucid 525 is 0.997. According to xsane.org, the changes from 0.997 were:

* bugfix for 16bit png format
* removed some gtk warnings
* removed two format string errors
* corrected some compilation issues

Perhaps this is a "compilation issue"?

I looked up simple-scan on the web, and it appears to be too simplistic for my needs. It looks like I may have to either find an xsane 0.998 binary package, probably from Debian or Ubuntu, or else compile Xsane from the current project distribution. Either one is apt to take a fair bit of chasing after dependencies.

If this is an xsane bug, it's hard to believe nobody else is having this problem. Maybe not many Puppy users have scanners?

ahoppin
Posts: 172
Joined: Mon 16 May 2011, 04:13

#5 Post by ahoppin »

Next attempt, installed xsane 0.998 from the Debian repository.

Required libjpeg8 and libgimpui-2.0.so.0. Installed gimp to get libgimp. Gimp wanted libpopper.so.7. Got that from Debian rep.

With xsane 0.998, still can't save to a tiff.

# xsane
JPEGLib: Wrong JPEG library version: library is 80, caller expects 62.
JPEGLib: Improper call to JPEG library in state 0.
JPEGLib: Wrong JPEG library version: library is 80, caller expects 62.

So, last resort, installed xsane 0.996 from Puppy Package Manager.

Finally, success through downgrade to the least common denominator. :-\

Hope this saga helps someone else.

Post Reply