Bug 414247

Summary: digikam: error while loading shared libraries: libcudart.so.8.0
Product: [Applications] digikam Reporter: matt <kde.org>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: crash CC: caulier.gilles, metzpinguin
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In: 7.0.0
Sentry Crash Report:

Description matt 2019-11-17 23:20:29 UTC
SUMMARY
When I launch digikam I get an error about a cuda missing library (this is happening since I removed cuda more or less cleanly to solve something else):

    hippo@hippo-camp:~$ digikam
    digikam: error while loading shared libraries: libcudart.so.8.0: cannot open shared object file: No such file or directory
    hippo@hippo-camp:~$ which digikam
    /usr/bin/digikam
    hippo@hippo-camp:~$ lddtree /usr/bin/digikam
    digikam => /usr/bin/digikam (interpreter => /lib64/ld-linux-x86-64.so.2)
    - libdigikamgui.so.5.6.0 => /usr/lib/digikam/libdigikamgui.so.5.6.0
    -- libopencv_core.so.3.2 => /usr/local/lib/libopencv_core.so.3.2
    --- libcudart.so.8.0 => not found

as you can see libcudart is a dependency of opencv. I think it is linked to the face recognition feature (? not sure) which I don't really need.

How can I fix this? is there a way to install just the lib?

I have tried to reinstall cuda from scratch but it only gives me version 9 or 10. And I cannot reinstall version 8 from NVIDIA site because I am now in 18.04.3 LTS and it is only supported on version 16.04.

I have tried --purge and reinstall digikam but it does not fix the problem. This should work no?

    sudo apt-get install libopencv-dev python3-opencv --reinstall

did not solve it neither.

EDIT: the library is not anymore on this machine and I don't have a cuda-8 directory anywhere anymore so the error is not the library path.

How can I fix this situation?


STEPS TO REPRODUCE
1. launch digikam in console or gui
2. app does not start and throws error message above
3. 

OBSERVED RESULT
cant start app and reinstall does not solve dependency problem

EXPECTED RESULT
reinstall should fix the problem

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: UBUNTU 18.04 LTS

ADDITIONAL INFORMATION
Comment 1 matt 2019-11-17 23:23:42 UTC
hippo@hippo-camp:~$ apt list --installed |grep digikam
digikam/bionic,now 4:5.6.0-0ubuntu10 amd64 [installed]
digikam-data/bionic,bionic,now 4:5.6.0-0ubuntu10 all [installed,automatic]
digikam-private-libs/bionic,now 4:5.6.0-0ubuntu10 amd64 [installed,automatic]
Comment 2 caulier.gilles 2019-11-18 03:03:43 UTC
yes CUDA is an optional dependency to OpenCV used with Faces detection/recognition.

But has i said, it's optional, and digiKam do not use Cuda directly (as OpenCL).

To solve your issue, you don't have real solutionthan to recompile OpenCV and digiKam. Here there is a script that i use on my computer to reduce all interdependencies in OpenCV. It also used in Linux AppImage to compile digiKam bundle. 

https://invent.kde.org/kde/digikam/blob/master/project/scripts/bootstrap.opencv-minimal-linux.sh

Note : you can use AppImage bundle as well to solve your issue.

In all cases, yur problem is not directly a digiKam bug.

Gilles Caulier
Comment 3 Maik Qualmann 2019-11-18 06:56:42 UTC
By the way, they are trying to use a very old version of digiKam. Ihre Version ist digiKam-5.6.0, nicht 7.0.0. Try the latest AppImage or a distribution that provides recent digiKam packages.

Maik