Bug 412778 - digikam 6.3.0 appimage fails to run on centos 7.6
Summary: digikam 6.3.0 appimage fails to run on centos 7.6
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Bundle-AppImage (show other bugs)
Version: 6.3.0
Platform: Appimage Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-09 17:36 UTC by Simon J Mudd
Modified: 2022-06-26 11:37 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 7.8.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon J Mudd 2019-10-09 17:36:48 UTC
SUMMARY

I tried to start the appimage version of digikam as there's no native up to date version as an rpm.
This has worked in the past.

Not sure which component to reference as this is "packaging / building". Please fix if Setup-FirstRun is not right.


STEPS TO REPRODUCE
1. OS being used:

$ rpm -q centos-release
centos-release-7-6.1810.2.el7.centos.x86_64                                                                                                                                                                                                   
 
2. download image from french mirror listed here: https://download.kde.org/stable/digikam/6.3.0/digikam-6.3.0-x86-64.appimage.mirrorlist
3. try to start the app and see it fail

OBSERVED RESULT

I made the binary executable with chmod +x digikam-6.3.0-x86-64.appimage and then tried to run it:

$ ./digikam-6.3.0-x86-64.appimage                                                                                                                                                                                           
-- digiKam Linux AppImage Bundle                                                                                                                                                                                                              
-- Use 'help' as CLI argument to know all available options for digiKam application.                                                                                                                                                          
-- Note: to integrate this bundle to your desktop, use AppImageLauncher.                                                                                                                                                                      
libudev.so.0                                                                                                                                                                                                                                  
-- Preloading shared libs:                                                                                                                                                                                                                    
digikam: error while loading shared libraries: libjack.so.0: cannot open shared object file: No such file or directory                                                                                                                        
$

So it looks to me like you are missing dependencies.

EXPECTED RESULT

I wanted digikam to work.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION

I use system kde and packages seem to vary a bit:

plasma related kde packages show:

$ rpm -qa | grep kde | grep plasma
kdeplasma-addons-libs-4.10.5-5.el7.x86_64
kde-plasma-networkmanagement-libs-0.9.0.9-7.el7.x86_64
kde-settings-plasma-19-23.8.el7.centos.noarch
kdeplasma-addons-4.10.5-5.el7.x86_64
kde-plasma-networkmanagement-0.9.0.9-7.el7.x86_64

qt packages are system packages:

$ rpm -qa | grep -i ^qt
qt3-3.3.8b-51.el7.x86_64
qt-x11-4.8.7-2.el7.x86_64
qt-settings-19-23.8.el7.centos.noarch
qt-4.8.7-2.el7.x86_64

Not sure if this helps.

But clearly libjack and maybe libudev seem to be suspicious and may be missing.

Also note that I can start this version:

digikam-6.2.0-git-20190426T172018-qtwebkit-x86-64.appimage

which I think i downloaded some time ago. From the timestamp I guess in April.

Seeing there was a newer version I thought I would try it.

The older version starts up with:

$ ./digikam-6.2.0-git-20190426T172018-qtwebkit-x86-64.appimage 
-- digiKam Linux AppImage Bundle
-- Use 'help' as CLI argument to know all available options for digiKam application.
-- Note: to integrate this bundle to your desktop, use AppImageLauncher.
libudev.so.0 
-- Preloading shared libs: :/tmp/.mount_digikaZIRU3j/usr/lib64/libudev.so.0
Digikam::DXmlGuiWindow::setupIconTheme: Breeze icons resource file found
Digikam::AlbumWatch::AlbumWatch: AlbumWatch use QFileSystemWatcher
Digikam::AlbumManager::setDatabase: Database Parameters:
   Type:                     "QMYSQL"
   DB Core Name:             "digikam"
   DB Thumbs Name:           "digikam"
   DB Face Name:             "digikam"
   DB Similarity Name:      "digikam"
   Connect Options:          ""
   Host Name:                "xxxxxx"
   Host port:                9999
   Internal Server:          false
   Internal Server Path:     ""
   Internal Server Serv Cmd: ""
   Internal Server Init Cmd: ""
   Username:                 "xxxxxxxxxxxxx"
   Password:                 "XXXXXXXXXXXXX"

....
Comment 1 caulier.gilles 2019-10-09 17:43:29 UTC
Try again using 6.4.0 pre-release bundle :

https://files.kde.org/digikam/

Gilles Caulier
Comment 2 Simon J Mudd 2019-10-09 18:06:18 UTC
I downloaded the 6.4 version as indicated and do not make much progress:

$ chmod +x digikam-6.4.0-git-20191005T120037-x86-64.appimage
$ ./digikam-6.4.0-git-20191005T120037-x86-64.appimage 
-- digiKam Linux AppImage Bundle
-- Use 'help' as CLI argument to know all available options for digiKam application.
-- Note: to integrate this bundle to your desktop, use AppImageLauncher.
libudev.so.0 
-- Preloading shared libs: 
digikam: error while loading shared libraries: libjack.so.0: cannot open shared object file: No such file or directory
$

Hope this helps.
Comment 3 Simon J Mudd 2019-10-09 18:07:18 UTC
So looks like the missing libjack.so.0 library is the issue.
Comment 4 caulier.gilles 2019-10-09 18:45:04 UTC
libjack must not been included in AppImage bundle as it depend too much of hardware intalled on the target system. Just install the library on your system and this will solve the problem.

Gilles Caulier
Comment 5 Simon J Mudd 2019-10-10 20:27:31 UTC
ok, so I searched around and found this:

$ sudo yum install jack-audio-connection-kit

That seems to fix the libjack.so issue.

So I try again:

$ ./digikam-6.4.0-git-20191005T120037-x86-64.appimage 
-- digiKam Linux AppImage Bundle
-- Use 'help' as CLI argument to know all available options for digiKam application.
-- Note: to integrate this bundle to your desktop, use AppImageLauncher.
libudev.so.0 
-- Preloading shared libs: 
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamcore.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamcore.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamcore.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamdatabase.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamdatabase.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamgui.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamgui.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libdigikamgui.so.6.4.0)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Sql.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libMagick++-7.Q16.so.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libMagick++-7.Q16.so.4)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Network.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5DBus.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Xml.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Widgets.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Gui.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Concurrent.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Core.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Core.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Core.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5XmlPatterns.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libexiv2.so.27)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libexiv2.so.27)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libmarblewidget-qt5.so.28)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/liblensfun.so.2)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_objdetect.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_objdetect.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_imgcodecs.so.3.4)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5PrintSupport.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5WebKit.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5WebKit.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_calib3d.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_features2d.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_flann.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_imgproc.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_core.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_core.so.3.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libheif.so)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libheif.so)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libIlmImf-2_2.so.22)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libIlmImf-2_2.so.22)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libIex-2_2.so.12)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libIex-2_2.so.12)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libIlmThread-2_2.so.12)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Svg.so.5)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_core.so.2.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_core.so.2.4)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libopencv_imgproc.so.2.4)
digikam: /lib64/libc.so.6: version `GLIBC_2.22' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libgnutls.so.30)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5OpenGL.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Quick.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libicuuc.so.58)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libicui18n.so.58)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Qml.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libQt5Qml.so.5)
digikam: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libde265.so)
digikam: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_digikaidWKaV/usr/lib/libde265.so)
digikam: /lib64/libgpg-error.so.0: no version information available (required by /tmp/.mount_digikaidWKaV/usr/lib/libgcrypt.so.20)

Checking the versions on my system:

$ pwd
/lib64
$ strings libstdc++.so.6 | grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_TM_1
$ strings libstdc++.so.6 | grep LIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_DEBUG_MESSAGE_LENGTH
$

So looks like my system libraries are just too old. (CentOS 7).

$ rpm -qf /lib64/libstdc++.so.6
libstdc++-4.8.5-36.el7_6.2.x86_64

Not sure if I can fix that.
Comment 6 caulier.gilles 2019-10-11 07:45:25 UTC
Did you run 32 or 64 bits AppImage ?

Did you run on 32 bits or 64 Centos ?

Gilles Caulier
Comment 7 Simon J Mudd 2019-10-12 15:48:31 UTC
I only run the 64 bit app and OS.
Comment 8 Maik Qualmann 2020-03-31 18:07:44 UTC
*** Bug 419458 has been marked as a duplicate of this bug. ***
Comment 9 caulier.gilles 2020-08-01 08:02:50 UTC
digiKam 7.0.0 stable release is now published:

https://www.digikam.org/news/2020-07-19-7.0.0_release_announcement/

We need a fresh feedback on this file using this version.

Thanks in advance

Gilles Caulier
Comment 10 caulier.gilles 2021-07-19 06:48:24 UTC
With next digiKam 7.4.0 release, AppImage bundle is compiled using a more recent Linux Mageia 7.1 host. Last stable Qt 5.15.2 and KF5 5.84 are used. ImageMagick codec 7 and libav 58 (ffmpeg) are used to supports extra image and video formats.

https://i.imgur.com/XV1tZkL.png

Please check if problem still reproducible with this version available as pre-release here:

https://files.kde.org/digikam/

Gilles Caulier
Comment 11 caulier.gilles 2021-12-13 10:09:01 UTC
Simon,

Stable digiKam 7.4.0 AppImage is published. Please check if problem is reproducible.

Thanks in advance

Gilles Caulier
Comment 12 caulier.gilles 2021-12-28 09:05:18 UTC
Simon,

With the bug #447150 just closed, next digiKam 7.5.0 pre-release AppImage improve binary compatibility. Please test with bundle available here :

https://files.kde.org/digikam/

Happy new year

Gilles Caulier
Comment 13 caulier.gilles 2022-01-29 10:06:36 UTC
Git commit aefb18b05385d0951a65590e40d4cad9978a4bcc by Gilles Caulier.
Committed on 29/01/2022 at 10:01.
Pushed by cgilles into branch 'master'.

AppImage: apply patch from Thomas King to preload more shared libs under Linux 64bit Ubuntu 20.04.3 LTS
Related: bug 449308, bug 447304, bug 419458, bug 414959

M  +5    -0    project/bundles/appimage/data/AppRun

https://invent.kde.org/graphics/digikam/commit/aefb18b05385d0951a65590e40d4cad9978a4bcc
Comment 14 caulier.gilles 2022-03-21 04:37:43 UTC
Git commit f30985b60a3daec1c1c09d471b0e438cc18cb627 by Gilles Caulier.
Committed on 21/03/2022 at 04:29.
Pushed by cgilles into branch 'qt5-maintenance'.

preload *pango* shared libraries to run AppImage with 7.7.0 under OpenSuse
Related: bug 451196, bug 419458, bug 447304
FIXED-IN: 7.7.0

M  +4    -0    project/bundles/appimage/data/AppRun

https://invent.kde.org/graphics/digikam/commit/f30985b60a3daec1c1c09d471b0e438cc18cb627
Comment 15 caulier.gilles 2022-06-11 04:04:34 UTC
Maik,

An AppImage bundle is now build with Craft framework from KDE binary factory using CentoS 7. First version is available here :

https://binary-factory.kde.org/view/AppImage/job/Digikam_Nightly_appimage-centos7/

As i can see, it use Qt 5.15.2, not the last one 5.15.3, so, we will have the famous Mysql compatibility bug here...  

Gilles
Comment 16 Maik Qualmann 2022-06-11 06:11:28 UTC
That AppImage is compiled without MySQL support and does not contain a MySQL driver. It is currently only testable with SQLite.
Strangely, the drive collection (UUID) cannot be found using Solid.

Maik
Comment 17 caulier.gilles 2022-06-26 11:37:57 UTC
Fixed with #455922