Bug 5813

Summary: Unable to start ufraw in Mageia 2 RC, libexiv2.so.10 not found
Product: Mageia Reporter: Matthieu Nguyen <nguyen.matthieu>
Component: RPM PackagesAssignee: Mageia Bug Squad <bugsquad>
Status: RESOLVED INVALID QA Contact:
Severity: major    
Priority: Normal CC: fundawang, mageia, pterjan
Version: Cauldron   
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: ufraw CVE:
Status comment:
Attachments: output of ldd /usr/bin/ufraw

Description Matthieu Nguyen 2012-05-09 23:34:04 CEST
Hello maintainers, and thanks for your hard work :).

I just upgraded to Mageia 2 RC (using the command line).

ufraw (for opening RAW image files) won't start.

The error message is:

[matt@localhost ~]$ ufraw
ufraw: error while loading shared libraries: libexiv2.so.10: cannot open shared object file: No such file or directory

Here is my ufraw version:

[matt@localhost ~]$ rpm -qi ufraw
Name        : ufraw
Version     : 0.18
Release     : 3.mga2
Architecture: x86_64
Install Date: Wed 09 May 2012 11:18:56 PM CEST
Group       : Graphics
Size        : 2599029
License     : GPLv2+
Signature   : RSA/SHA1, Sun 25 Dec 2011 05:05:11 AM CET, Key ID b742fa8b80420f66
Source RPM  : ufraw-0.18-3.mga2.src.rpm
Build Date  : Sun 25 Dec 2011 05:01:50 AM CET
Build Host  : jonund
Relocations : (not relocatable)
Packager    : Mageia Team <http://www.mageia.org>
Vendor      : Mageia.Org
URL         : http://ufraw.sourceforge.net/
Summary     : Graphical tool to convert raw images of digital cameras
Description :
UFRaw is a utility to read and manipulate raw images from digital cameras.
It can be used by itself or as a Gimp plug-in.
It reads raw images using Dave Coffin's raw conversion utility DCRaw.
And it supports basic color management using Little CMS, allowing
the user to apply color profiles.

Raw images are the data directly read from the CCD of the camera,
without in-camera processing, without lossy JPEG compression, and in
36 or 48 bits color depth (TIFF has 24 bits). Problem of the raw
images is that they are in proprietary, camera-specific formats as
they are exactly what the CCD has captured, and the CCDs on differnt
cameras are very different. It also contains info about the camera
settings.

And lib64exiv2 is installed on my machine as well.

[nguyenm@FR-PAR-LMNGUYEN ~]$ rpm -qis lib64exiv2_11
Name        : lib64exiv2_11
Version     : 0.22
Release     : 1.mga2
Architecture: x86_64
Install Date: Tue 08 May 2012 10:09:07 PM CEST
Group       : Graphics
Size        : 20611135
License     : GPLv2+
Signature   : RSA/SHA1, Sun 09 Oct 2011 04:55:16 AM CEST, Key ID b742fa8b80420f66
Source RPM  : exiv2-0.22-1.mga2.src.rpm
Build Date  : Sun 09 Oct 2011 04:53:27 AM CEST
Build Host  : jonund
Relocations : (not relocatable)
Packager    : Mageia Team <http://www.mageia.org>
Vendor      : Mageia.Org
URL         : http://www.exiv2.org/
Summary     : Library to access EXIF data in image files
Description :
libexiv2 is a C++ library to access image metadata. libexiv2 is free
software.

The Exiv2 library provides

    * full read and write access to the Exif and IPTC metadata of
      an image through Exiv2 keys and standard C++ iterators
      (Example1, Example2, Example3, Example4)
    * a smart IPTC implementation that does not affect data that
      programs like Photoshop store in the same image segment
    * Exif MakerNote support:
          o MakerNote tags can be accessed just like any other Exif metadata
          o a sophisticated write algorithm avoids corrupting the MakerNote:
              1) the MakerNote is not re-located if possible at all, and
              2) MakerNote Ifd offsets are re-calculated if the MakerNote
                 needs to be moved (for known Ifd MakerNotes)
    * extract and delete methods for Exif thumbnails (both, JPEG and TIFF
      thumbnails)
    * set methods for Exif thumbnails (JPEG only, TIFF thumbnails can be
      set from individual tags)
    * complete API documentation (by Doxygen)
normal        /usr/lib64/libexiv2.so.11
normal        /usr/lib64/libexiv2.so.11.0.0

So it looks like ufraw expects an older version of the exiv libs...
Comment 1 Matthieu Nguyen 2012-05-09 23:44:18 CEST
I cheated (a bit) and created a symlink to /usr/lib64/libexiv2.so.11 named /usr/lib64/libexiv2.so.10

ufraw then complained that libtiff.so.3 was also missing:

[matt@localhost ~]$ ufraw
ufraw: error while loading shared libraries: libtiff.so.3: cannot open shared object file: No such file or directory

Checking in /usr/lib64, I had libtiff.so.5 and not libtiff.so.3.

Again, created a symlink, and then ufraw started successfully.

So in summary, there is a problem with two libs for ufraw:
- libexiv2
- libtiff

Hope that helps
Comment 2 Sander Lepik 2012-05-10 08:47:38 CEST
How did you upgrade your system (what command exactly)?

And what is the output of these commands:
rpm -qa |grep exiv
rpm -qa |grep tiff

exiv's version 10 and tiff's version 3 seem very much like a mga1 packages.

CC: (none) => sander.lepik

Comment 3 Matthieu Nguyen 2012-05-10 09:47:45 CEST
I used the command line update, as per:

https://wiki.mageia.org/en/Mageia_2_Release_Notes#Upgrading_from_Mageia_1

So I ran:

killall mgaapplet
mgaapplet --testing

I posted above the rpm -qis output for the exiv and tiff libs. They seem to be the mga2 version.

Here's the rpm -qa output

[matt@localhost ~]$ rpm -qa | grep exiv
lib64gexiv2_0-0.3.92-1.mga2
exiv2-0.22-1.mga2
lib64exiv2_11-0.22-1.mga2
lib64exiv2-devel-0.22-1.mga2
[matt@localhost ~]$ rpm -qa | grep tiff
lib64tiff-devel-4.0.1-2.mga2
libtiff5-4.0.1-2.mga2
lib64tiff5-4.0.1-2.mga2

My guess is that ufraw has been built against the wrong exiv/tiff libs (if such a thing is possible).
Manuel Hiebel 2012-05-10 12:03:35 CEST

CC: (none) => fundawang, pterjan
Source RPM: (none) => ufraw

Comment 4 Funda Wang 2012-05-10 12:21:02 CEST
Cannot reproduce in latest cauldron i586.
Comment 5 Sander Lepik 2012-05-10 12:22:42 CEST
Well, it's not. ldd shows it's built correctly. Can you try reinstall of ufraw? Or what's the output of ldd /usr/bin/ufraw
Comment 6 Pascal Terjan 2012-05-10 13:39:06 CEST
Can you also run rpm -V ufraw?
Comment 7 Matthieu Nguyen 2012-05-10 14:38:27 CEST
Created attachment 2240 [details]
output of ldd /usr/bin/ufraw
Comment 8 Pascal Terjan 2012-05-10 14:42:29 CEST
What about "which ufraw" or running /usr/bin/ufraw?
Do you have a manually built one which would be broken?
Comment 9 Matthieu Nguyen 2012-05-10 14:50:19 CEST
Just thought about the "which ufraw" at the same time as your comment.

Although I have no recollection of building ufraw myself, I did have a copy under /usr/local/bin/ufraw...

I removed the old binaries. ufraw now starts fine.

Apologies for the inconvenience, this bug can be closed as a PEBKAC...
Comment 10 Pascal Terjan 2012-05-10 14:51:57 CEST
OK thanks for confirming :)

Status: NEW => RESOLVED
Resolution: (none) => INVALID