I install Qt5, KF5 Frameworks, libraries and applications into /opt/local under Linux, with /opt/local/lib and equivalent not declared to the dynamic loader via ldconfig. I thus need to rely on exhaustive rpath information or else the correct shared libraries are not found. I have a build script which takes care of setting all the appropriate CMake commandline argument required for this kind of build, which works fine for almost all KF5 software. Not so with digikam5. Most Qt5 libraries are found without issue, except for 3 libraries: ``` ldd /opt/local/bin/digikam | fgrep libQt libQt5Sql.so.5 => /opt/local/libexec/qt5/lib/libQt5Sql.so.5 (0x00007fbb14d46000) libQt5Widgets.so.5 => /opt/local/libexec/qt5/lib/libQt5Widgets.so.5 (0x00007fbb1399d000) libQt5Gui.so.5 => /opt/local/libexec/qt5/lib/libQt5Gui.so.5 (0x00007fbb131ba000) libQt5Core.so.5 => /opt/local/libexec/qt5/lib/libQt5Core.so.5 (0x00007fbb12ade000) libQt5WebKitWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKitWidgets.so.5 (0x00007fbb11f46000) libQt5Xml.so.5 => /opt/local/libexec/qt5/lib/libQt5Xml.so.5 (0x00007fbb0f832000) libQt5DBus.so.5 => /opt/local/libexec/qt5/lib/libQt5DBus.so.5 (0x00007fbb0f27b000) libQt5PrintSupport.so.5 => /opt/local/libexec/qt5/lib/libQt5PrintSupport.so.5 (0x00007fbb0beb5000) libQt5X11Extras.so.5 => /opt/local/libexec/qt5/lib/libQt5X11Extras.so.5 (0x00007fbb0bcb0000) libQt5Network.so.5 => /opt/local/libexec/qt5/lib/libQt5Network.so.5 (0x00007fbb0b93c000) libQt5Concurrent.so.5 => /opt/local/libexec/qt5/lib/libQt5Concurrent.so.5 (0x00007fbb0b4e9000) libQt5OpenGL.so.5 => /opt/local/libexec/qt5/lib/libQt5OpenGL.so.5 (0x00007fbb0b28f000) libQt5WebKit.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKit.so.5 (0x00007fbb07303000) libQt5Sensors.so.5 => /opt/local/libexec/qt5/lib/libQt5Sensors.so.5 (0x00007fbb070c5000) libQt5MultimediaWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5MultimediaWidgets.so.5 (0x00007fbb06ea7000) libQt5Multimedia.so.5 => /opt/local/libexec/qt5/lib/libQt5Multimedia.so.5 (0x00007fbb06b93000) libQt5Svg.so.5 => /opt/local/libexec/qt5/lib/libQt5Svg.so.5 (0x00007fbb049e7000) libQt5Script.so.5 => not found libQt5Quick.so.5 => not found libQt5Qml.so.5 => not found libQt5Positioning.so.5 => /opt/local/libexec/qt5/lib/libQt5Positioning.so.5 (0x00007fbafe3d5000) libQt5Quick.so.5 => /opt/local/libexec/qt5/lib/libQt5Quick.so.5 (0x00007fbafddde000) libQt5Qml.so.5 => /opt/local/libexec/qt5/lib/libQt5Qml.so.5 (0x00007fbafd7ea000) libQt5WebChannel.so.5 => /opt/local/libexec/qt5/lib/libQt5WebChannel.so.5 (0x00007fbafd5cc000) ``` I have a hunch that this may be because these Qt components are not declared and linked as direct dependencies but even if that's the case no other application has yet shown this behaviour where only a few libraries are linked without rpath information. For example, KDevelop also links to the same 3 libraries, and also through indirect dependencies (= neither of the 3 is linked explicitly with the executable). Its toplevel CMake file does "Quick" and "Script" in the Qt find_package statement though. I'm invoking cmake like this: ``` cmake -DCMAKE_INSTALL_PREFIX=/opt/local -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_COLOR_MAKEFILE=ON -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -DCMAKE_INSTALL_NAME_DIR=/opt/local/lib -DCMAKE_SYSTEM_PREFIX_PATH="/opt/local;/usr" -DCMAKE_MODULE_PATH=/opt/local/share/cmake/Modules -DCMAKE_FIND_FRAMEWORK=LAST -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -Wno-dev -DECM_MKSPECS_INSTALL_DIR=/opt/local/share/qt5/mkspecs -DPLUGIN_INSTALL_DIR=/opt/local/share/qt5/plugins -DKDE_INSTALL_QTPLUGINDIR=/opt/local/share/qt5/plugins -DQML_INSTALL_DIR=/opt/local/share/qt5/qml -DBUILD_doc=OFF -DBUILD_docs=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_STRIP:FILEPATH=/bin/echo -DCMAKE_PREFIX_PATH=/opt/local -DCMAKE_INSTALL_RPATH="/opt/local/lib/x86_64-linux-gnu;/opt/local/lib" -DSYSCONF_INSTALL_DIR=\"/opt/local/etc\" -DPYTHON_EXECUTABLE=/opt/local/bin/python2.7 -DENABLE_KFILEMETADATASUPPORT=ON -DENABLE_OPENCV3=ON -DBUILD_TESTING=OFF -DDIGIKAMSC_COMPILE_DOC=off -DENABLE_INTERNALMYSQL=on -DENABLE_MYSQLSUPPORT=on ``` Reproducible: Always
Not to make things worse but the digikam executable isn't the only element affected: {{{ > ldd /opt/local/lib/x86_64-linux-gnu/libdigikamcore.so.5.0.0 | fgrep libQt libQt5Sql.so.5 => /opt/local/libexec/qt5/lib/libQt5Sql.so.5 (0x00007f44361cd000) libQt5WebKitWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKitWidgets.so.5 (0x00007f4435f84000) libQt5PrintSupport.so.5 => /opt/local/libexec/qt5/lib/libQt5PrintSupport.so.5 (0x00007f4432312000) libQt5X11Extras.so.5 => /opt/local/libexec/qt5/lib/libQt5X11Extras.so.5 (0x00007f4431ec9000) libQt5Network.so.5 => /opt/local/libexec/qt5/lib/libQt5Network.so.5 (0x00007f4431b55000) libQt5Xml.so.5 => /opt/local/libexec/qt5/lib/libQt5Xml.so.5 (0x00007f44314b2000) libQt5DBus.so.5 => /opt/local/libexec/qt5/lib/libQt5DBus.so.5 (0x00007f4430d49000) libQt5Concurrent.so.5 => /opt/local/libexec/qt5/lib/libQt5Concurrent.so.5 (0x00007f4430814000) libQt5OpenGL.so.5 => /opt/local/libexec/qt5/lib/libQt5OpenGL.so.5 (0x00007f44305ba000) libQt5Widgets.so.5 => /opt/local/libexec/qt5/lib/libQt5Widgets.so.5 (0x00007f442fd2c000) libQt5Gui.so.5 => /opt/local/libexec/qt5/lib/libQt5Gui.so.5 (0x00007f442f548000) libQt5Core.so.5 => /opt/local/libexec/qt5/lib/libQt5Core.so.5 (0x00007f442e8d3000) libQt5WebKit.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKit.so.5 (0x00007f442b6f6000) libQt5Sensors.so.5 => /opt/local/libexec/qt5/lib/libQt5Sensors.so.5 (0x00007f442b4b7000) libQt5MultimediaWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5MultimediaWidgets.so.5 (0x00007f442b299000) libQt5Multimedia.so.5 => /opt/local/libexec/qt5/lib/libQt5Multimedia.so.5 (0x00007f442af86000) libQt5Svg.so.5 => not found libQt5Script.so.5 => not found libQt5Quick.so.5 => not found libQt5Qml.so.5 => not found libQt5Positioning.so.5 => /opt/local/libexec/qt5/lib/libQt5Positioning.so.5 (0x00007f442344e000) libQt5Quick.so.5 => /opt/local/libexec/qt5/lib/libQt5Quick.so.5 (0x00007f4422e57000) libQt5Qml.so.5 => /opt/local/libexec/qt5/lib/libQt5Qml.so.5 (0x00007f4422863000) libQt5WebChannel.so.5 => /opt/local/libexec/qt5/lib/libQt5WebChannel.so.5 (0x00007f4422645000) libQt5Svg.so.5 => /opt/local/libexec/qt5/lib/libQt5Svg.so.5 (0x00007f4421684000) }}}
Still an issue with 5.1.0 and git/head: ``` ldd /opt/local/bin/digikam.bin linux-vdso.so.1 => (0x00007ffe32131000) libdigikamgui.so.5.1.0 => /opt/local/lib/x86_64-linux-gnu/libdigikamgui.so.5.1.0 (0x00007fe278fdd000) libdigikamcore.so.5.1.0 => /opt/local/lib/x86_64-linux-gnu/libdigikamcore.so.5.1.0 (0x00007fe2780d3000) libKF5FileMetaData.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5FileMetaData.so.5 (0x00007fe277eba000) libQt5Sql.so.5 => /opt/local/libexec/qt5/lib/libQt5Sql.so.5 (0x00007fe277c73000) libKF5I18n.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5I18n.so.5 (0x00007fe277a30000) libKF5CoreAddons.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5CoreAddons.so.5 (0x00007fe2777c9000) libKF5ConfigCore.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5ConfigCore.so.5 (0x00007fe277589000) libdigikamdatabase.so.5.1.0 => /opt/local/lib/x86_64-linux-gnu/libdigikamdatabase.so.5.1.0 (0x00007fe277196000) libQt5Widgets.so.5 => /opt/local/libexec/qt5/lib/libQt5Widgets.so.5 (0x00007fe276908000) libQt5Gui.so.5 => /opt/local/libexec/qt5/lib/libQt5Gui.so.5 (0x00007fe276125000) libQt5Core.so.5 => /opt/local/libexec/qt5/lib/libQt5Core.so.5 (0x00007fe275a49000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fe2756d6000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe2754bf000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe2750f9000) libQt5WebKitWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKitWidgets.so.5 (0x00007fe274eb1000) libKF5Solid.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Solid.so.5 (0x00007fe274c31000) libopencv_objdetect.so.3.1 => /opt/local/lib/libopencv_objdetect.so.3.1 (0x00007fe2749d8000) libKF5Kipi.so.31.0.0 => /opt/local/lib/x86_64-linux-gnu/libKF5Kipi.so.31.0.0 (0x00007fe2747a0000) libgphoto2_port.so.12 => /opt/local/lib/libgphoto2_port.so.12 (0x00007fe274595000) libgphoto2.so.6 => /opt/local/lib/libgphoto2.so.6 (0x00007fe27430c000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe274006000) libopencv_imgproc.so.3.1 => /opt/local/lib/libopencv_imgproc.so.3.1 (0x00007fe273a59000) libopencv_core.so.3.1 => /opt/local/lib/libopencv_core.so.3.1 (0x00007fe273597000) libKF5KIOWidgets.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 (0x00007fe2732b8000) libKF5Service.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Service.so.5 (0x00007fe273053000) libKF5XmlGui.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5XmlGui.so.5 (0x00007fe272d96000) libKF5WindowSystem.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5WindowSystem.so.5 (0x00007fe272b5d000) libKF5IconThemes.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5IconThemes.so.5 (0x00007fe27292b000) libKF5ConfigGui.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5ConfigGui.so.5 (0x00007fe272711000) libQt5Xml.so.5 => /opt/local/libexec/qt5/lib/libQt5Xml.so.5 (0x00007fe2724d7000) libKF5WidgetsAddons.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5WidgetsAddons.so.5 (0x00007fe2721ce000) libQt5DBus.so.5 => /opt/local/libexec/qt5/lib/libQt5DBus.so.5 (0x00007fe271f44000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe271d26000) liblcms2.so.2 => /usr/lib/x86_64-linux-gnu/liblcms2.so.2 (0x00007fe271ad0000) libtiff.so.5 => /opt/local/lib/libtiff.so.5 (0x00007fe271846000) libpng16.so.16 => /opt/local/lib/libpng16.so.16 (0x00007fe27161c000) libexiv2.so.14 => /opt/local/lib/libexiv2.so.14 (0x00007fe27111e000) libKF5Notifications.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Notifications.so.5 (0x00007fe270ee5000) libKF5NotifyConfig.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5NotifyConfig.so.5 (0x00007fe270cd3000) libmarblewidget-qt5.so.24 => /opt/local/lib/libmarblewidget-qt5.so.24 (0x00007fe27055f000) libKF5Bookmarks.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Bookmarks.so.5 (0x00007fe270323000) libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fe26ffee000) libjasper.so.1 => /opt/local/lib/libjasper.so.1 (0x00007fe26fd9b000) libjpeg.so.9 => /opt/local/lib/libjpeg.so.9 (0x00007fe26fb49000) liblqr-1.so.0 => /usr/lib/x86_64-linux-gnu/liblqr-1.so.0 (0x00007fe26f931000) liblensfun.so.0 => /usr/lib/liblensfun.so.0 (0x00007fe26f715000) libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007fe26f4ad000) libKF5ThreadWeaver.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5ThreadWeaver.so.5 (0x00007fe26f28b000) libexpat.so.1 => /opt/local/lib/libexpat.so.1 (0x00007fe26f05b000) libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007fe26ee2d000) libQt5PrintSupport.so.5 => /opt/local/libexec/qt5/lib/libQt5PrintSupport.so.5 (0x00007fe26ebbd000) libQt5X11Extras.so.5 => /opt/local/libexec/qt5/lib/libQt5X11Extras.so.5 (0x00007fe26e9b8000) libQt5Network.so.5 => /opt/local/libexec/qt5/lib/libQt5Network.so.5 (0x00007fe26e644000) libKF5ConfigWidgets.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5ConfigWidgets.so.5 (0x00007fe26e402000) libQt5Concurrent.so.5 => /opt/local/libexec/qt5/lib/libQt5Concurrent.so.5 (0x00007fe26e1fa000) libQt5OpenGL.so.5 => /opt/local/libexec/qt5/lib/libQt5OpenGL.so.5 (0x00007fe26dfa0000) libintl.so.8 => /opt/local/lib/libintl.so.8 (0x00007fe26dd94000) libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fe26db43000) libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fe26d83a000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fe26d614000) libz.so.1 => /opt/local/lib/libz.so.1 (0x00007fe26d3f9000) libicui18n.so.52 => /usr/lib/x86_64-linux-gnu/libicui18n.so.52 (0x00007fe26cff1000) libicuuc.so.52 => /usr/lib/x86_64-linux-gnu/libicuuc.so.52 (0x00007fe26cc78000) libpcre16.so.0 => /opt/local/lib/libpcre16.so.0 (0x00007fe26ca0a000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe26c805000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe26c5fd000) /lib64/ld-linux-x86-64.so.2 (0x000055820d0de000) libQt5WebKit.so.5 => /opt/local/libexec/qt5/lib/libQt5WebKit.so.5 (0x00007fe26a014000) libQt5Sensors.so.5 => /opt/local/libexec/qt5/lib/libQt5Sensors.so.5 (0x00007fe269dd6000) libQt5MultimediaWidgets.so.5 => /opt/local/libexec/qt5/lib/libQt5MultimediaWidgets.so.5 (0x00007fe269bb8000) libQt5Multimedia.so.5 => /opt/local/libexec/qt5/lib/libQt5Multimedia.so.5 (0x00007fe2698a4000) libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007fe269693000) libltdl.so.7 => /opt/local/lib/libltdl.so.7 (0x00007fe269485000) libexif.so.12 => /usr/lib/x86_64-linux-gnu/libexif.so.12 (0x00007fe269241000) libtbb.so.2 => /opt/local/lib/libtbb.so.2 (0x00007fe269005000) libva.so.1 => /usr/lib/x86_64-linux-gnu/libva.so.1 (0x00007fe268dec000) libKF5KIOCore.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5KIOCore.so.5 (0x00007fe268af3000) libKF5JobWidgets.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5JobWidgets.so.5 (0x00007fe2688d2000) libKF5Completion.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Completion.so.5 (0x00007fe2686a3000) libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007fe26849e000) libKF5DBusAddons.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5DBusAddons.so.5 (0x00007fe26828c000) libKF5TextWidgets.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5TextWidgets.so.5 (0x00007fe268053000) libKF5Attica.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Attica.so.5 (0x00007fe267dcd000) libKF5GlobalAccel.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5GlobalAccel.so.5 (0x00007fe267bb7000) libKF5ItemViews.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5ItemViews.so.5 (0x00007fe267989000) libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fe267769000) libxcb-keysyms.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-keysyms.so.1 (0x00007fe267566000) libQt5Svg.so.5 => /opt/local/libexec/qt5/lib/libQt5Svg.so.5 (0x00007fe267310000) libKF5Archive.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Archive.so.5 (0x00007fe2670e6000) libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007fe266ea0000) liblzma.so.5 => /opt/local/lib/liblzma.so.5 (0x00007fe266c7f000) libcurl.so.4 => /opt/local/lib/libcurl.so.4 (0x00007fe266a2a000) libssh.so.4 => /opt/local/lib/libssh.so.4 (0x00007fe26679d000) libKF5Codecs.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Codecs.so.5 (0x00007fe26656f000) libXtst.so.6 => /usr/lib/x86_64-linux-gnu/libXtst.so.6 (0x00007fe266368000) libdbusmenu-qt5.so.2 => /opt/local/lib/libdbusmenu-qt5.so.2 (0x00007fe266132000) libphonon4qt5.so.4 => /opt/local/lib/libphonon4qt5.so.4 (0x00007fe265ec5000) libastro.so.1 => /opt/local/lib/libastro.so.1 (0x00007fe265c80000) libQt5Script.so.5 => not found libQt5Quick.so.5 => not found libQt5Qml.so.5 => not found libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007fe265a7b000) libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007fe265878000) libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fe265672000) libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007fe26546f000) libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fe265241000) libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fe26502f000) libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fe264e2b000) libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fe264c25000) libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fe264a23000) libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007fe26480b000) libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fe264606000) libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fe264400000) libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fe2641f1000) libproxy.so.1 => /usr/lib/x86_64-linux-gnu/libproxy.so.1 (0x00007fe263fd0000) libKF5Auth.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5Auth.so.5 (0x00007fe263dbf000) libKF5GuiAddons.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5GuiAddons.so.5 (0x00007fe263baa000) libiconv.so.2 => /opt/local/lib/libiconv.so.2 (0x00007fe2638b3000) libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fe2636ab000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fe26346d000) libicudata.so.52 => /usr/lib/x86_64-linux-gnu/libicudata.so.52 (0x00007fe261bff000) libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fe2619f5000) libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007fe2617f1000) libwebp.so.5 => /usr/lib/x86_64-linux-gnu/libwebp.so.5 (0x00007fe261599000) libxslt.so.1 => /opt/local/lib/libxslt.so.1 (0x00007fe261351000) libxml2.so.2 => /opt/local/lib/libxml2.so.2 (0x00007fe261028000) libsqlite3.so.0 => /opt/local/lib/libsqlite3.so.0 (0x00007fe260d28000) libQt5Positioning.so.5 => /opt/local/libexec/qt5/lib/libQt5Positioning.so.5 (0x00007fe260ae7000) libQt5Quick.so.5 => /opt/local/libexec/qt5/lib/libQt5Quick.so.5 (0x00007fe2604f0000) libQt5Qml.so.5 => /opt/local/libexec/qt5/lib/libQt5Qml.so.5 (0x00007fe25fefc000) libQt5WebChannel.so.5 => /opt/local/libexec/qt5/lib/libQt5WebChannel.so.5 (0x00007fe25fcde000) libpulse.so.0 => /usr/lib/x86_64-linux-gnu/libpulse.so.0 (0x00007fe25fa8f000) libcgmanager.so.0 => /lib/x86_64-linux-gnu/libcgmanager.so.0 (0x00007fe25f874000) libnih.so.1 => /lib/x86_64-linux-gnu/libnih.so.1 (0x00007fe25f65b000) libnih-dbus.so.1 => /lib/x86_64-linux-gnu/libnih-dbus.so.1 (0x00007fe25f451000) libacl.so.1 => /lib/x86_64-linux-gnu/libacl.so.1 (0x00007fe25f248000) libKF5SonnetUi.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5SonnetUi.so.5 (0x00007fe25f029000) libKF5SonnetCore.so.5 => /opt/local/lib/x86_64-linux-gnu/libKF5SonnetCore.so.5 (0x00007fe25ee0e000) libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fe25ec0a000) libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fe25ea03000) libbz2.so => /opt/local/lib/libbz2.so (0x00007fe25e7ef000) libssl.so.1.0.0 => /opt/local/lib/libssl.so.1.0.0 (0x00007fe25e574000) libcrypto.so.1.0.0 => /opt/local/lib/libcrypto.so.1.0.0 (0x00007fe25e11f000) libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007fe25ded8000) libpulse-mainloop-glib.so.0 => /usr/lib/x86_64-linux-gnu/libpulse-mainloop-glib.so.0 (0x00007fe25dcd2000) libjson-c.so.2 => /lib/x86_64-linux-gnu/libjson-c.so.2 (0x00007fe25dac6000) libpulsecommon-8.0.so => /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-8.0.so (0x00007fe25d84c000) libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007fe25d580000) libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007fe25d351000) libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007fe25d14d000) libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007fe25cf41000) libsystemd-daemon.so.0 => /lib/x86_64-linux-gnu/libsystemd-daemon.so.0 (0x00007fe25cd3d000) libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007fe25cb33000) libsndfile.so.1 => /usr/lib/x86_64-linux-gnu/libsndfile.so.1 (0x00007fe25c8ca000) libasyncns.so.0 => /usr/lib/x86_64-linux-gnu/libasyncns.so.0 (0x00007fe25c6c4000) libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007fe25c4c0000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fe25c2a4000) libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007fe25c08a000) libFLAC.so.8 => /usr/lib/x86_64-linux-gnu/libFLAC.so.8 (0x00007fe25be58000) libvorbisenc.so.2 => /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2 (0x00007fe25b989000) libvorbis.so.0 => /usr/lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007fe25b75c000) libogg.so.0 => /usr/lib/x86_64-linux-gnu/libogg.so.0 (0x00007fe25b552000) ```
Created attachment 100698 [details] configure, build and destroot log This shows the output from the build/package system I use (linux derivation of MacPorts). I hope there's something in there that helps pinpointing why some Qt libraries do not have their required rpath information.
I don't know where is your problem, but certainly something is wrong when you compile DK and co. The bundle are relocatable under Linux. The AppImage for ex can be executed from everywhere https://drive.google.com/drive/folders/0BzeiVr-byqt5Y0tIRWVWelRJenM Gilles Caulier
Edit: it would *seem* that the issue has resolved itself in 5.3.0 . I agree something was wrong, but digiKam is the only application where I've seen this happen with my build settings, and only for a few Qt libraries. I don't know how the AppImage stuff is finagled together, but I'm not using that. I'm just using unpatched CMake files and everything KF5 is built with the settings required to apply full rpaths to all binaries. Qt5 itself is built that way too. I'd agree the problem was fully on my end if I saw this happening to all Qt libraries (in DK or in other applications too), but that isn't the case. The simplest explanation would be that somehow the rpath information is dropped for the affected Qt libraries
(In reply to RJVB from comment #5) > Edit: it would *seem* that the issue has resolved itself in 5.3.0 . > > I agree something was wrong, but digiKam is the only application where I've > seen this happen with my build settings, and only for a few Qt libraries. > I don't know how the AppImage stuff is finagled together, but I'm not using > that. I'm just using unpatched CMake files and everything KF5 is built with > the settings required to apply full rpaths to all binaries. Qt5 itself is > built that way too. > > I'd agree the problem was fully on my end if I saw this happening to all Qt > libraries (in DK or in other applications too), but that isn't the case. > > The simplest explanation would be that somehow the rpath information is > dropped for the affected Qt libraries Is the problem resolved now? Can you test this with current master branch (version 5.5.0)?
See my edit: the issue apparently resolved itself before the 5.3.0 release. I haven't had time to follow digiKam development lately but I've made a mental note to schedule an upgrade to git/master. In the meantime I'll try to verify with the 5.4.0 release version which should be more straightforward to build on my Linux set-up.
5.4.0 is no longer concerned either. I'll close this ticket, and reopen it if ever the issue rears its ugly head again.
Git commit 06310dac564f758a864f2f8097d77756a0eae7f1 by Gilles Caulier. Committed on 14/10/2017 at 15:53. Pushed by cgilles into branch 'master'. First stage to fix the relative path registration of MAcOS bundle to be instalable everywhere, and not only on /opt/digikam. All binary files from the bundle are now patched while PKG build to fix pathes to shared library in relative point of internal bundle root. For this we use Apple tools "otool" and "install_name_tool" to perform these changes. Still TODO : fix OSA scripts to not use and absolute path Related: bug 365337 M +42 -0 project/bundles/macports/04-build-installer.sh M +34 -0 project/bundles/macports/common.sh M +1 -1 project/bundles/macports/installer/digikam.pkgproj https://commits.kde.org/digikam-software-compilation/06310dac564f758a864f2f8097d77756a0eae7f1