[Digikam-users] crashing after uptade

Gian Paolo Sanino Vattier gpsanino at vtr.net
Tue Jul 7 05:07:48 BST 2015


Thanks Gilles,
among the three options, I posted already the bug on OpenSuSE Bugzilla
as you mention.
See
https://forums.opensuse.org/showthread.php/508479-Digikam-crashes-at-startup-due-to-old-buggy-exiv2-libs?p=2718523#post2718523

To compile DK would take me days to learn howto and thus I tried other
option. I am trying to downgrade to DK 4.10.
I have a small box that has DK running fine on OpenSuSE 13.2 (it has
disabled the auto-update). I am attempting to replicate just the same
rpm files in my main box in order to recover control over my work.

the running box has:

digikam_4.10.0-42.9
digikam-doc_4.10.0-42.9
libkexiv2-11_14.12.3-16.1 (used by digikam)
libexiv2-13_0.24-4.1.9 (notice this has no "k" - it is a different rpm
than libkexiv2 and is used by several kde apps)
libkface_14.12.3-10.1
libkface3_14.12.3-10.1
libkgeomap2_4.10.0-42.9
libkipi11_14.12.3-16.1
kipi-plugins-4.10.0-42.9
kipi-plugins-acquireimage-4.10.0-42.9
kipi-plugins-geolocation-4.10.0-42.9
hugin_2013.0.0-3.1.4
libgphoto2-6_2.5.5.1-1.3
libqt_4.8.6-4.4.1
libopencv2_4 (2.4.9-2.1.9)
(exiv2 is not installed, so the libs are the previous - and installing
exiv2 with 0.25 does not make any difference)

To find these rpms was complex since opensuse build service had them
removed. However I was able to find them through ftp.pbone.net.

So far I have deleted all packages related to digikam and installed the
same as the listed above, by saving them in a local repo and be accessed
directly by Yast. However, my main box and two notebooks have failed to
regain control suing this strategy. Digikam keeps crashing the same way.

from console the first error mesage is:
digikam(27388)/digikam (core) Digikam::DigikamApp::checkSolidCamera:
Solid returns unsupported driver handle for gphoto2

I checked Digikam's help/info of the running box, and I have no idea
what else may be related to digikam that I should check as well and I
guess OpenSuSE does things differently. As to not have installed exiv2
but just some libraries. I will reload one of the notebooks from scratch
to see how that goes. My knowledge is limiting the options I can try.

again many thanks Gilles.


On 07/06/2015 01:22 PM, Gilles Caulier wrote:
>
>
> 2015-07-06 18:16 GMT+02:00 Gian Paolo Sanino Vattier <gpsanino at vtr.net>:
>
>     Thanks so much Gilles,
>
>     I was guessing this and tried all I could to fix it.
>     It seems that OpenSUSE uses a wrapper for this, named libkexiv2.
>
>
> no. libkexiv2 is the wrapper developed for digiKam and shared with KDE.
>
> If you update Exiv2, you need to update libkexiv2 too.
>
>  
>
>     I searched on the online build service and found a newer version
>     but DK keeps crashing. Digikam 4.11 in OpenSUSE requests for a
>     file named libexiv2.so.13. The newest libkexiv2-11 wrapper
>     includes this file but digikam does not find it. Instead the
>     system wants to install libexiv2-13 as a source for
>     libexiv2.so.13. The problem is that it provides only the version
>     0.24-4.1.9 instead of the 0.25 that is needed.
>
>     I tried with libexiv2-14 that indeed provides the 0.25 (see here:
>     http://software.opensuse.org/package/libexiv2-14) but Digikam does
>     not look for it or uses it despite I installed it and removed the
>     libexiv2-13 package.
>
>
> yes, libkexiv2 must be updated, and certainly digiKam as well
> (recompilation to preserve BC)
>  
>
>     Also, I installed the rpm for exiv2 v0.25 but it does not provides
>     the library DK is requesting (libexiv2.so.13).
>     It seems to be more a packaging issue at OpenSuSE. I was hoping DK
>     in opensuse look for the highest version installed of libexiv2 but
>     instead it is fixed in libexiv2-13 that provides only 0.24. Same
>     is happening with other apps like Gwenview.
>     Libexiv2-14 provides 0.25 but only Hugin seems to make use of it,
>     while DK among other apps are fixed on libexiv2-13 (so to exiv2
>     0.24). Downgrading to DK4.6 does not work neither.
>
>     In a desperate move I created a symlink of libexiv2.so.14 as
>     libexiv2.so.13. However, several errors appeared, failing to list
>     dates, tabs, albums and faces. The first being this:
>     digikam(4509): couldn't create slave: "Unable to create io-slave:
>     klauncher said: Error loading 'kio_digikamdates'.
>     Interestingly, Gwenview accepted the desperate solution.
>
>
> no : BC is broken (Binary compatibility)
>  
>
>
>     I have a large collection of video files so it is impossible for
>     me to separate this in a functional manner. I guess I have to wait
>     until the packager of DK for OpenSuSE perhaps includes the use of
>     libexiv2-14 or a newer version of libexiv2 or something alike.
>     Anyway, it is out of my hands despite most of my work depends on DK.
>     I will prepare a third notebook from the ISO installer without
>     upgrading and use my HDD as an external drive, in order to try to
>     survive until something is uploaded to OpenSUSE repos that perhaps
>     allows DK 4.11 to use libexiv2-14 (or libexiv2.so.14 instead of
>     libexiv2.so.13).
>
>
> ultimate solutions :
>
> - Regress to Exiv2 0.23, but this want mean to update libkexiv2 and
> digiKam as well.
> - Recompile digiKam & co yourself.
> - Open a file to OpenSuse bugzilla to ask to update to last Exiv2 0.25
> quickly. 0.24 is full of bugs about video files.
>
> Gilles Caulier
>  
>
>     Thanks Gilles, at least now I know what is causing the crash. I
>     hope users of other distros do not have the OpenSuSE issues.
>     gps
>
>     On 07/06/2015 03:56 AM, Gilles Caulier wrote:
>>     Update Exiv2 shared lib from 0.24 to 0.25. It crash in video file
>>     parsing. We have receive a lots of reports about this problem.
>>
>>     Gilles Caulier
>>
>>     2015-07-06 4:42 GMT+02:00 Gian Paolo Sanino Vattier
>>     <gpsanino at vtr.net <mailto:gpsanino at vtr.net>>:
>>
>>         Hi, I tried to update KDE, libkexiv2 and gphoto. However,
>>         there were only few packages for my KDE to update; about
>>         gphoto2 there was an update but not yet compatible with most
>>         apps; and about exiv2 I was able to update to libkexiv2-11
>>         (15.04.2-1.1). Libkexiv2 is a wrapper around Exiv2 library in
>>         OpenSuSE.
>>
>>         The crash keeps happening the same, but I was able to copy a
>>         line during a console cal of DK.
>>
>>         digikam(2344)/digikam (core) Digikam::DigikamApp::checkSolidCamera: Solid returns unsupported driver handle for gphoto2 
>>
>>         I have no idea if this is directly related with the crash,
>>         but here it is.
>>         Maybe somebody can guide me a little bit where to look in
>>         order to fix this.
>>         Thanks again
>>         gps
>>
>>
>>
>>         On 07/05/2015 06:16 PM, Gian Paolo Sanino Vattier wrote:
>>>         Hi, I have no idea what is causing DK crash. I updated to
>>>         4.11.0-43-3 from KDE:EXTRA for OpenSuSE 13.2.
>>>         after updating (several pkgs from KDE and other apps
>>>         together with DK) my DK starts with the front image, loading
>>>         the database, kipi-plugins, tools and just after opening the
>>>         GUI, it crashes.
>>>
>>>         Perhaps somebody can check this log and guide me a little
>>>         bit. I already tried downgrading to 4.10 but it was not
>>>         available in the repo anymore. So, I tried with 4.6 and that
>>>         also is crashing. Maybe DK is fine but perhaps some of its
>>>         dependencies is being the problem. Also my notebook updated
>>>         automatically and DK is also crashing the same way.  So, I
>>>         guess there are many OpenSuSE boxes with the same problem.
>>>
>>>         Thanks a lot....
>>>         gps
>>>
>>>
>>>         Application: digiKam (digikam), signal: Aborted
>>>
>>>         Using host libthread_db library "/lib64/libthread_db.so.1".
>>>
>>>         [Current thread is 1 (Thread 0x7ff3d30b1880 (LWP 11995))]
>>>
>>>         Thread 3 (Thread 0x7ff3ac46d700 (LWP 11997)):
>>>
>>>         [KCrash Handler]
>>>
>>>         #5 0x00007ff3cbabf187 in raise () at /lib64/libc.so.6
>>>
>>>         #6 0x00007ff3cbac0538 in abort () at /lib64/libc.so.6
>>>
>>>         #7 0x00007ff3cbafc844 in () at /lib64/libc.so.6
>>>
>>>         #8 0x00007ff3cbb020ae in malloc_printerr () at /lib64/libc.so.6
>>>
>>>         #9 0x00007ff3cbb02db6 in _int_free () at /lib64/libc.so.6
>>>
>>>         #10 0x00007ff3bfe90cd1 in () at
>>>         /usr/lib64/tls/libnvidia-tls.so.304.125
>>>
>>>         #11 0x00007ff3c9747197 in
>>>         Exiv2::RiffVideo::infoTagsHandler() () at
>>>         /usr/lib64/libexiv2.so.13
>>>
>>>         #12 0x00007ff3c974c025 in Exiv2::RiffVideo::decodeBlock() ()
>>>         at /usr/lib64/libexiv2.so.13
>>>
>>>         #13 0x00007ff3c974bc78 in
>>>         Exiv2::RiffVideo::tagDecoder(Exiv2::DataBuf&, unsigned long)
>>>         () at /usr/lib64/libexiv2.so.13
>>>
>>>         #14 0x00007ff3c974c025 in Exiv2::RiffVideo::decodeBlock() ()
>>>         at /usr/lib64/libexiv2.so.13
>>>
>>>         #15 0x00007ff3c974c398 in Exiv2::RiffVideo::readMetadata()
>>>         () at /usr/lib64/libexiv2.so.13
>>>
>>>         #16 0x00007ff3d14db1a5 in KExiv2Iface::KExiv2::load(QString
>>>         const&) const () at /usr/lib64/libkexiv2.so.11
>>>
>>>         #17 0x00007ff3d0df3976 in Digikam::DMetadata::load(QString
>>>         const&) const () at /usr/lib64/libdigikamcore.so.4.11.0
>>>
>>>         #18 0x00007ff3d084263f in
>>>         Digikam::ImageScanner::loadFromDisk() () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #19 0x00007ff3d0842820 in
>>>         Digikam::ImageScanner::newFile(int) () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #20 0x00007ff3d07db056 in
>>>         Digikam::CollectionScanner::scanNewFile(QFileInfo const&,
>>>         int) () at /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #21 0x00007ff3d07de1df in
>>>         Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation
>>>         const&, QString const&) () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #22 0x00007ff3d07de097 in
>>>         Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation
>>>         const&, QString const&) () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #23 0x00007ff3d07de097 in
>>>         Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation
>>>         const&, QString const&) () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #24 0x00007ff3d07de097 in
>>>         Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation
>>>         const&, QString const&) () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #25 0x00007ff3d07deaa3 in
>>>         Digikam::CollectionScanner::scanAlbumRoot(Digikam::CollectionLocation
>>>         const&) () at /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #26 0x00007ff3d07df67d in
>>>         Digikam::CollectionScanner::completeScan() () at
>>>         /usr/lib64/libdigikamdatabase.so.4.11.0
>>>
>>>         #27 0x00000000005e42df in ()
>>>
>>>         #28 0x00007ff3cc64e79f in () at /usr/lib64/libQtCore.so.4
>>>
>>>         #29 0x00007ff3c7caf754 in () at /usr/X11R6/lib64/libGL.so.1
>>>
>>>         #30 0x00007ff3c9abd0a4 in start_thread () at
>>>         /lib64/libpthread.so.0
>>>
>>>         #31 0x00007ff3cbb6f08d in clone () at /lib64/libc.so.6
>>>
>>>         Thread 2 (Thread 0x7ff3abc6c700 (LWP 11998)):
>>>
>>>         #0 0x00007ff3cbb62d2d in read () at /lib64/libc.so.6
>>>
>>>         #1 0x00007ff3c7cae73c in () at /usr/X11R6/lib64/libGL.so.1
>>>
>>>         #2 0x00007ff3bfe90bf7 in () at
>>>         /usr/lib64/tls/libnvidia-tls.so.304.125
>>>
>>>         #3 0x00007ff3c3c67750 in () at /usr/lib64/libglib-2.0.so.0
>>>
>>>         #4 0x00007ff3c3c26714 in g_main_context_check () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #5 0x00007ff3c3c26b7b in () at /usr/lib64/libglib-2.0.so.0
>>>
>>>         #6 0x00007ff3c3c26cec in g_main_context_iteration () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #7 0x00007ff3cc77d0de in
>>>         QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #8 0x00007ff3cc74ee6f in
>>>         QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #9 0x00007ff3cc74f165 in
>>>         QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
>>>         at /usr/lib64/libQtCore.so.4
>>>
>>>         #10 0x00007ff3cc64c0bf in QThread::exec() () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #11 0x00007ff3cc730783 in () at /usr/lib64/libQtCore.so.4
>>>
>>>         #12 0x00007ff3cc64e79f in () at /usr/lib64/libQtCore.so.4
>>>
>>>         #13 0x00007ff3c7caf754 in () at /usr/X11R6/lib64/libGL.so.1
>>>
>>>         #14 0x00007ff3c9abd0a4 in start_thread () at
>>>         /lib64/libpthread.so.0
>>>
>>>         #15 0x00007ff3cbb6f08d in clone () at /lib64/libc.so.6
>>>
>>>         Thread 1 (Thread 0x7ff3d30b1880 (LWP 11995)):
>>>
>>>         #0 0x00007ff3c9ac105f in pthread_cond_wait@@GLIBC_2.3.2 ()
>>>         at /lib64/libpthread.so.0
>>>
>>>         #1 0x00007ff3cc64ec86 in QWaitCondition::wait(QMutex*,
>>>         unsigned long) () at /usr/lib64/libQtCore.so.4
>>>
>>>         #2 0x00007ff3cc64e36e in QThread::wait(unsigned long) () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #3 0x00000000005e29db in ()
>>>
>>>         #4 0x00000000005e2b57 in ()
>>>
>>>         #5 0x00007ff3cbac1bf9 in __run_exit_handlers () at
>>>         /lib64/libc.so.6
>>>
>>>         #6 0x00007ff3cbac1c45 in () at /lib64/libc.so.6
>>>
>>>         #7 0x00007ff3cd1c4fc8 in () at /usr/lib64/libQtGui.so.4
>>>
>>>         #8 0x00007ff3cde759c0 in
>>>         KApplication::xioErrhandler(_XDisplay*) () at
>>>         /usr/lib64/libkdeui.so.5
>>>
>>>         #9 0x00007ff3ca05c3be in _XIOError () at /usr/lib64/libX11.so.6
>>>
>>>         #10 0x00007ff3ca05a53a in _XReply () at /usr/lib64/libX11.so.6
>>>
>>>         #11 0x00007ff3ca055e9d in XSync () at /usr/lib64/libX11.so.6
>>>
>>>         #12 0x00007ff3cd34ced5 in QRasterWindowSurface::syncX() ()
>>>         at /usr/lib64/libQtGui.so.4
>>>
>>>         #13 0x00007ff3cd34d1b5 in
>>>         QRasterWindowSurface::beginPaint(QRegion const&) () at
>>>         /usr/lib64/libQtGui.so.4
>>>
>>>         #14 0x00007ff3cd3669b9 in () at /usr/lib64/libQtGui.so.4
>>>
>>>         #15 0x00007ff3cd19d5c0 in QWidgetPrivate::syncBackingStore()
>>>         () at /usr/lib64/libQtGui.so.4
>>>
>>>         #16 0x00007ff3cd1ad56a in QWidget::event(QEvent*) () at
>>>         /usr/lib64/libQtGui.so.4
>>>
>>>         #17 0x00007ff3cd5630b3 in QMainWindow::event(QEvent*) () at
>>>         /usr/lib64/libQtGui.so.4
>>>
>>>         #18 0x00007ff3cdf62979 in KXmlGuiWindow::event(QEvent*) ()
>>>         at /usr/lib64/libkdeui.so.5
>>>
>>>         #19 0x00007ff3cd15e76c in
>>>         QApplicationPrivate::notify_helper(QObject*, QEvent*) () at
>>>         /usr/lib64/libQtGui.so.4
>>>
>>>         #20 0x00007ff3cd164cad in QApplication::notify(QObject*,
>>>         QEvent*) () at /usr/lib64/libQtGui.so.4
>>>
>>>         #21 0x00007ff3cde76e0a in KApplication::notify(QObject*,
>>>         QEvent*) () at /usr/lib64/libkdeui.so.5
>>>
>>>         #22 0x00007ff3cc7502ad in
>>>         QCoreApplication::notifyInternal(QObject*, QEvent*) () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #23 0x00007ff3cc75357d in
>>>         QCoreApplicationPrivate::sendPostedEvents(QObject*, int,
>>>         QThreadData*) () at /usr/lib64/libQtCore.so.4
>>>
>>>         #24 0x00007ff3cc77d8fe in () at /usr/lib64/libQtCore.so.4
>>>
>>>         #25 0x00007ff3c3c26a04 in g_main_context_dispatch () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #26 0x00007ff3c3c26c48 in () at /usr/lib64/libglib-2.0.so.0
>>>
>>>         #27 0x00007ff3c3c26cec in g_main_context_iteration () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #28 0x00007ff3cc77d0be in
>>>         QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #29 0x00007ff3cd1fb676 in () at /usr/lib64/libQtGui.so.4
>>>
>>>         #30 0x00007ff3cc74ee6f in
>>>         QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #31 0x00007ff3cc74f165 in
>>>         QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
>>>         at /usr/lib64/libQtCore.so.4
>>>
>>>         #32 0x00000000005e0069 in ()
>>>
>>>         #33 0x000000000052fc67 in ()
>>>
>>>         #34 0x00007ff3cc76859e in QObject::event(QEvent*) () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #35 0x00007ff3cd15e76c in
>>>         QApplicationPrivate::notify_helper(QObject*, QEvent*) () at
>>>         /usr/lib64/libQtGui.so.4
>>>
>>>         #36 0x00007ff3cd164cad in QApplication::notify(QObject*,
>>>         QEvent*) () at /usr/lib64/libQtGui.so.4
>>>
>>>         #37 0x00007ff3cde76e0a in KApplication::notify(QObject*,
>>>         QEvent*) () at /usr/lib64/libkdeui.so.5
>>>
>>>         #38 0x00007ff3cc7502ad in
>>>         QCoreApplication::notifyInternal(QObject*, QEvent*) () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #39 0x00007ff3cc75357d in
>>>         QCoreApplicationPrivate::sendPostedEvents(QObject*, int,
>>>         QThreadData*) () at /usr/lib64/libQtCore.so.4
>>>
>>>         #40 0x00007ff3cc77d8fe in () at /usr/lib64/libQtCore.so.4
>>>
>>>         #41 0x00007ff3c3c26a04 in g_main_context_dispatch () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #42 0x00007ff3c3c26c48 in () at /usr/lib64/libglib-2.0.so.0
>>>
>>>         #43 0x00007ff3c3c26cec in g_main_context_iteration () at
>>>         /usr/lib64/libglib-2.0.so.0
>>>
>>>         #44 0x00007ff3cc77d0be in
>>>         QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #45 0x00007ff3cd1fb676 in () at /usr/lib64/libQtGui.so.4
>>>
>>>         #46 0x00007ff3cc74ee6f in
>>>         QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
>>>         () at /usr/lib64/libQtCore.so.4
>>>
>>>         #47 0x00007ff3cc74f165 in
>>>         QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
>>>         at /usr/lib64/libQtCore.so.4
>>>
>>>         #48 0x00007ff3cc7545b9 in QCoreApplication::exec() () at
>>>         /usr/lib64/libQtCore.so.4
>>>
>>>         #49 0x00000000004a1176 in ()
>>>
>>>         #50 0x00007ff3cbaabb05 in __libc_start_main () at
>>>         /lib64/libc.so.6
>>>
>>>         #51 0x00000000004a3a1f in _start ()
>>>
>>>
>>>
>>>
>>>
>>>
>>>         _______________________________________________
>>>         Digikam-users mailing list
>>>         Digikam-users at kde.org <mailto:Digikam-users at kde.org>
>>>         https://mail.kde.org/mailman/listinfo/digikam-users
>>
>>         _______________________________________________
>>         Digikam-users mailing list
>>         Digikam-users at kde.org <mailto:Digikam-users at kde.org>
>>         https://mail.kde.org/mailman/listinfo/digikam-users
>>
>>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-users/attachments/20150707/088a40bf/attachment.html>


More information about the Digikam-users mailing list