[Digikam-devel] [Bug 125696] digikam does not connect to USB camera with libgphoto-2.1.99

Achim Bohnet ach at mpe.mpg.de
Wed Jun 21 23:27:29 BST 2006


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=125696         
ach mpe mpg de changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ach mpe mpg de



------- Additional Comments From ach mpe mpg de  2006-06-22 00:27 -------
Reproduceable in Kubuntu/Dapper and SuSE 10.1.

#6 (Marcus Meisner)  #10 (Hubert Fuguiere):

also in Kubuntu/Dapper and debian/sid libghoto2 2.1.6 and 2.2.0 (rebuild debian
pkg in dapper) have both major version 2:

$ l 2.*/usr/lib/libgph*.so.2.*
-rw-r--r-- 1 ach ach 101800 2006-05-10 16:31 2.1.6/usr/lib/libgphoto2.so.2.0.3
-rw-r--r-- 1 ach ach 101696 2006-06-20 00:40 2.2/usr/lib/libgphoto2.so.2.1.0
$ objdump -p 2.*/usr/lib/libgph*.so.2.* | grep SONAME
  SONAME      libgphoto2.so.2
  SONAME      libgphoto2.so.2

Gilles and I tried to rebuild digikam with libgphoto2-2 installed.
Still without the 2.2.0's .la files camera list is empty.  So it's
a runtime, not a build time problem.

One difference between 2.1.6 and 2.2.0 is that the camera plugins
are
    /usr/lib/libgphoto2/2.1.6/libgphoto2_<type>.so
and
    /usr/lib/libghoto2/2.2.0/<type>.so
respectively.

With strace one gets:

$ strace digikam --detect-camera 2>&1 | grep /usr/lib/libgphoto2/2.2.0/
open("/usr/lib/libgphoto2/2.2.0/adc65.la", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgphoto2/2.2.0/adc65", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgphoto2/2.2.0/agfa_cl20.la", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgphoto2/2.2.0/agfa_cl20", O_RDONLY) = -1 ENOENT (No such file or directory)
...

and for gtkkam instead

allee(130) ~/tmp $ strace gtkam 2>&1 | grep /usr/lib/libgphoto2/2.2.0/
open("/usr/lib/libgphoto2/2.2.0/adc65.la", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgphoto2/2.2.0/adc65.so", O_RDONLY) = 5
open("/usr/lib/libgphoto2/2.2.0/agfa_cl20.la", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libgphoto2/2.2.0/agfa_cl20.so", O_RDONLY) = 5

So while gtkam and digikam use the same libgphoto2

$ ldd /usr/bin/digikam | grep libgphoto
        libgphoto2.so.2 => /usr/lib/libgphoto2.so.2 (0xb6565000)
        libgphoto2_port.so.0 => /usr/lib/libgphoto2_port.so.0 (0xb653e000)
$ ldd /usr/bin/gtkam | grep libgphoto
        libgphoto2.so.2 => /usr/lib/libgphoto2.so.2 (0xb7f0c000)
        libgphoto2_port.so.0 => /usr/lib/libgphoto2_port.so.0 (0xb7f05000)

the sequence of files that the apps try to open differ.

    digikam:   .la, then ""
    gtkam:     .la, then .so

With the .la files installed digikam tries .la then .so as gtkam does
even without the .la files.  [the .la files are in kubuntu and debian
in the pkg libghoto2-2-dev, that's the reason why the hack/workaround
of installing the 2.2.0 devel pkgs fixes a runtime problem]


Both use the same ltdl library:

$ ldd /usr/bin/digikam /usr/bin/gtkam | grep ltdl
        libltdl.so.3 => /usr/lib/libltdl.so.3 (0xb62ec000)
        libltdl.so.3 => /usr/lib/libltdl.so.3 (0xb761d000)

I've no glue yet what goes wrong.   My guess is that somehow KDE seems
to influence the list of extentions and makes digikam/libghoto2 combo
fail to dynamicly load the camera drivers.

coolo ping?  ;)

Achim



More information about the Digikam-devel mailing list