Opened 16 years ago

Closed 14 years ago

#16912 closed defect (fixed)

qtpfsgui won't run

Reported by: dershow Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: qtpfsgui exiv2 Cc: tcurdt@…,clubjuggler@…,dershow
Port: qtpfsgui

Description

When I try to double click on qtpfsgui I get a error of: Library not loaded: /opt/local/lib/libexiv2.0.dylib Referenced from: /Applications/MacPorts/qtpfsgui.app/Contents/MacOS/qtpfsgui

I checked and in fact that library doesn't exist. I see that exiv2 provides:

/opt/local/lib/libexiv2.dylib

/opt/local/lib/libexiv2.4.dylib

/opt/local/lib/libexiv2.4.0.1.dylib

My guess is that a recent upgrade of exiv2 broke the link.

I tried this as a work around:

sudo ln -s /opt/local/lib/libexiv2.4.0.1.dylib /opt/local/lib/libexiv2.0.dylib

and now it does open.

I am not sure if exiv2 really should have that link, or if qtpfsgui really should be looking for libexiv2.dylib rather then libexif2.0. But the current combination doesn't work.

Change History (8)

comment:1 Changed 16 years ago by dershow

Ooops. The above work around does allow the application to open, but then if I try to open a set of jpg images it doesn't work. The first time it did open the images, but didn't find the exif data that is present. But since that first time it crashes when I try to open jpg images. I checked and it is crashes in a thread that uses exif data. So I think that probably qtpfsgui does require an earlier version of exiv2? Or maybe it just has to be recompiled to link properly, but something is clearly wrong in the interface between the two.

comment:2 Changed 16 years ago by blb@…

Keywords: exiv2 added; exiv removed

Sounds like qtpfsgui may need a recompile as it may be pretty closely tied to the exiv2 library present while it was built. Try uninstalling qtpfsgui then reinstalling it, see if it works fine after that.

comment:3 Changed 16 years ago by dershow

Yup. That did it. It now seems to work fine (without needing the ln fix above). I guess that there is still the question of whether qtpfsgui, exiv2, or MacPorts should "know" about this mismatch in library versions. Is that something that a port could be aware of? I suppose that just incrementing the version number of qtpfsgui, when exiv2 updated, would force a rebuild. But is there a general MacPorts solution to this type of problem?

comment:4 Changed 16 years ago by jmroot (Joshua Root)

Right, ports need to be able to depend on a particular version (range) of other ports. I don't think there's a ticket covering that specifically, but it's closely related to #126.

comment:5 Changed 16 years ago by dershow

It is related, but not identical. This seems like a slightly more subtle issue. It seems that qrpfsgui will work fine with either version of exiv2. The problem is just that it needs to be rebuilt with the upgrade to the newer version of exiv2 because otherwise the dynamic links are broken so it fails. So the manual fix is easy. Just rebuild. But I would guess that this is a problem across other ports as well.

comment:6 Changed 16 years ago by dershow

I also just noticed that Gimp has the same problem. I got the following when I ran gimp:

Oct 21 10:28:39 adamsmacbook-3 [0x0-0xd90d9].org.gimp.Gimp[66132]: dyld: Library not loaded: /opt/local/lib/libexiv2.0.dylib
Oct 21 10:28:39 adamsmacbook-3 [0x0-0xd90d9].org.gimp.Gimp[66132]:   Referenced from: /opt/local/lib/gimp/2.0/plug-ins/ufraw-gimp
Oct 21 10:28:39 adamsmacbook-3 [0x0-0xd90d9].org.gimp.Gimp[66132]:   Reason: image not found
Oct 21 10:28:39 adamsmacbook-3 ReportCrash[66142]: Formulating crash report for process ufraw-gimp[66141]
Oct 21 10:28:39 adamsmacbook-3 ReportCrash[66142]: Saved crashreport to /Users/dersh/Library/Logs/CrashReporter/ufraw-gimp_2008-10-21-102839_AdamsMacBook-3.crash using uid: 501 gid: 501, euid: 501 egid: 501

The fix was just to uninstall and rebuild ufraw, and now I don't get the error. It seems that ufraw, which is used by GIMP, then uses libexiv2, but was not finding the correct version. But the rebuild again solves that problem.

comment:7 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

comment:8 Changed 14 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

Rev bumping is the only fix for these problems and the port has been updated a couple of times since this was opened.

Note: See TracTickets for help on using tickets.