Bug 261634 - Use Qt framework 6.70 and KDE framework 6.2.0 to compile AppImage bundle.
Summary: Use Qt framework 6.70 and KDE framework 6.2.0 to compile AppImage bundle.
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Bundle-AppImage (show other bugs)
Version: 7.6.0
Platform: Appimage Linux
: NOR wishlist
Target Milestone: ---
Assignee: Digikam Developers
URL: https://invent.kde.org/qt/qt/qt5/-/tr...
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-30 16:13 UTC by Andi Clemens
Modified: 2024-04-20 05:55 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 8.4.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andi Clemens 2010-12-30 16:13:55 UTC
Version:           1.6.0
OS:                Linux



Reproducible: Didn't try
Comment 1 Andi Clemens 2010-12-30 16:14:19 UTC
Gilles... just testing :-)
Comment 2 caulier.gilles 2022-01-23 14:30:11 UTC
Git commit 58854446147363b07df3b554871c413316ee52ec by Gilles Caulier.
Committed on 23/01/2022 at 14:28.
Pushed by cgilles into branch 'master'.

Add rules to checkout and compile code from KDE Qt6 repository for AppImage bundle.
Not yet tested. Current Qt stable version is 6.3

A  +100  -0    project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt
A  +271  -0    project/bundles/3rdparty/ext_qt/6.3/config_help_6.3.txt
A  +95   -0    project/bundles/3rdparty/ext_qt/6.3/kde-qt6.sh
A  +13   -0    project/bundles/3rdparty/ext_qt/6.3/qt-appimage-openssl-linked.patch
A  +83   -0    project/bundles/3rdparty/ext_qt/6.3/qt-appimage-support.patch
A  +13   -0    project/bundles/3rdparty/ext_qt/6.3/qt-icu-hack.patch

https://invent.kde.org/graphics/digikam/commit/58854446147363b07df3b554871c413316ee52ec
Comment 3 caulier.gilles 2022-01-23 15:07:41 UTC
Git commit 1d153f76e5ebf15846e65001943238609d86ce56 by Gilles Caulier.
Committed on 23/01/2022 at 15:06.
Pushed by cgilles into branch 'master'.

add new Qt6 submodules to ignore at configuration time.

M  +8    -4    project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt

https://invent.kde.org/graphics/digikam/commit/1d153f76e5ebf15846e65001943238609d86ce56
Comment 4 caulier.gilles 2022-01-23 15:33:03 UTC
Git commit 453ffb2b2a11a5ec117095d17f2921a66b4c6936 by Gilles Caulier.
Committed on 23/01/2022 at 15:32.
Pushed by cgilles into branch 'master'.

update list of Qt6.3 sub-modules to drop

M  +15   -12   project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt

https://invent.kde.org/graphics/digikam/commit/453ffb2b2a11a5ec117095d17f2921a66b4c6936
Comment 5 caulier.gilles 2022-01-23 19:26:47 UTC
Git commit 900511584553a1b62e32af9509405289541c0ac7 by Gilles Caulier.
Committed on 23/01/2022 at 19:25.
Pushed by cgilles into branch 'master'.

Add before download step to please cmake to not recheck Qt code from KDE Qt repository

M  +6    -4    project/bundles/3rdparty/ext_qt/5.15-LTS/CMakeLists.txt
M  +6    -4    project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt

https://invent.kde.org/graphics/digikam/commit/900511584553a1b62e32af9509405289541c0ac7
Comment 6 caulier.gilles 2022-01-23 23:19:12 UTC
Git commit e6db88513131131daa5c4b7060b186af50378192 by Gilles Caulier.
Committed on 23/01/2022 at 23:15.
Pushed by cgilles into branch 'master'.

copy list of Qt submodules git revisions as manifiest in /usr/share/qt...
Related: bug 114417

M  +3    -1    project/bundles/3rdparty/ext_qt/5.15-LTS/kde-qt5-lts.sh
M  +3    -1    project/bundles/3rdparty/ext_qt/6.3/kde-qt6.sh

https://invent.kde.org/graphics/digikam/commit/e6db88513131131daa5c4b7060b186af50378192
Comment 7 caulier.gilles 2022-01-24 06:41:27 UTC
Git commit bf5ee4c11fb37e8cab35d9231bed34d96c6d5afb by Gilles Caulier.
Committed on 24/01/2022 at 06:39.
Pushed by cgilles into branch 'master'.

copy qt git revision manifest in the bundle at ./usr/share/digikam/MANIFEST.txt
Related: bug 114417

M  +3    -5    project/bundles/3rdparty/ext_qt/5.15-LTS/kde-qt5-lts.sh
M  +4    -6    project/bundles/3rdparty/ext_qt/6.3/kde-qt6.sh
M  +2    -0    project/bundles/appimage/01-build-host.sh
M  +0    -2    project/bundles/appimage/03-build-digikam.sh
M  +6    -1    project/bundles/appimage/04-build-appimage.sh

https://invent.kde.org/graphics/digikam/commit/bf5ee4c11fb37e8cab35d9231bed34d96c6d5afb
Comment 8 caulier.gilles 2022-01-24 09:43:37 UTC
Git commit 332ac3bd39e779666eb74348b3690c40c64cce01 by Gilles Caulier.
Committed on 24/01/2022 at 09:37.
Pushed by cgilles into branch 'master'.

prepare libs info dialog to show MANIFEST file contents with all git revisions from upstream code as QT5.15 LTS

M  +74   -33   core/app/views/utils/componentsinfodlg.cpp
M  +111  -52   core/libs/dialogs/libsinfodlg.cpp
M  +6    -0    core/libs/dialogs/libsinfodlg.h

https://invent.kde.org/graphics/digikam/commit/332ac3bd39e779666eb74348b3690c40c64cce01
Comment 9 caulier.gilles 2022-01-24 10:12:01 UTC
Git commit 7613ada0bbe789e44e185e70035445a828778dc3 by Gilles Caulier.
Committed on 24/01/2022 at 10:10.
Pushed by cgilles into branch 'master'.

Add support of MANIFEST.txt file with all git revisions from upstream components
Related: bug 114417

M  +50   -0    core/libs/dialogs/libsinfodlg.cpp

https://invent.kde.org/graphics/digikam/commit/7613ada0bbe789e44e185e70035445a828778dc3
Comment 10 caulier.gilles 2022-01-25 09:37:10 UTC
Git commit 340b6fe593599a7a1cefd8b77bce86f66fa264ec by Gilles Caulier.
Committed on 25/01/2022 at 09:35.
Pushed by cgilles into branch 'master'.

create manifest for libraw in digiKam core.
merge manifest files in all bundles
Related: bug 114417

M  +1    -1    NEWS
A  +2    -0    core/libs/rawengine/libraw/libraw_manifest.txt
M  +1    -0    project/bundles/appimage/03-build-digikam.sh
M  +9    -1    project/bundles/appimage/04-build-appimage.sh
M  +1    -0    project/bundles/macports/03-build-digikam.sh
M  +14   -0    project/bundles/macports/04-build-installer.sh
M  +1    -0    project/bundles/mxe/03-build-digikam.sh
M  +11   -0    project/bundles/mxe/04-build-installer.sh

https://invent.kde.org/graphics/digikam/commit/340b6fe593599a7a1cefd8b77bce86f66fa264ec
Comment 11 caulier.gilles 2022-01-25 11:08:52 UTC
Git commit 3351d8c3a80247c9008994ae10fe84d8d6134839 by Gilles Caulier.
Committed on 25/01/2022 at 11:07.
Pushed by cgilles into branch 'master'.

Create manifest for rolling release Exiv2
Related: bug 114417

M  +1    -1    core/libs/rawengine/libraw/libraw_manifest.txt
M  +14   -8    project/bundles/3rdparty/ext_exiv2/CMakeLists.txt
M  +1    -1    project/bundles/3rdparty/ext_qt/5.15-LTS/kde-qt5-lts.sh
M  +1    -1    project/bundles/3rdparty/ext_qt/6.3/kde-qt6.sh
A  +37   -0    project/scripts/create_manifest.sh

https://invent.kde.org/graphics/digikam/commit/3351d8c3a80247c9008994ae10fe84d8d6134839
Comment 12 caulier.gilles 2022-01-25 12:19:53 UTC
Git commit cf3de1f3b2f9eba2a4b6fe7be050d31b30a520cd by Gilles Caulier.
Committed on 25/01/2022 at 12:18.
Pushed by cgilles into branch 'master'.

create manifest for rolling release lensfun and qtav
Related: bug 114417

M  +3    -1    project/bundles/3rdparty/ext_exiv2/CMakeLists.txt
M  +12   -2    project/bundles/3rdparty/ext_lensfun/CMakeLists.txt
M  +11   -2    project/bundles/3rdparty/ext_qtav/CMakeLists.txt
M  +3    -0    project/bundles/appimage/03-build-digikam.sh
M  +1    -1    project/bundles/appimage/config.sh
M  +2    -2    project/scripts/create_manifest.sh

https://invent.kde.org/graphics/digikam/commit/cf3de1f3b2f9eba2a4b6fe7be050d31b30a520cd
Comment 13 caulier.gilles 2022-01-27 10:12:24 UTC
Git commit 64aabc7efde8e0be9f41339fe53c10808304f2ce by Gilles Caulier.
Committed on 27/01/2022 at 09:25.
Pushed by cgilles into branch 'master'.

more tune to compile Qt6 for AppImage

M  +68   -73   project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt
A  +88   -0    project/bundles/3rdparty/ext_qt/6.3/bootstrap-qt6.sh
A  +10   -0    project/bundles/3rdparty/ext_qt/6.3/qt-base-cmake.patch

https://invent.kde.org/graphics/digikam/commit/64aabc7efde8e0be9f41339fe53c10808304f2ce
Comment 14 caulier.gilles 2022-01-27 10:15:09 UTC
Git commit 1ac5ccaff45e375e1ba1433b5780627151e73d23 by Gilles Caulier.
Committed on 27/01/2022 at 10:14.
Pushed by cgilles into branch 'master'.

add ninja as dependency compilation tool for Qt6

M  +1    -0    project/bundles/appimage/01-build-host.sh
D  +0    -1077 project/bundles/macports/installer/digikam.pkgproj

https://invent.kde.org/graphics/digikam/commit/1ac5ccaff45e375e1ba1433b5780627151e73d23
Comment 15 caulier.gilles 2022-01-27 15:55:44 UTC
Git commit f1a59f36e651149af3cd1656fe51db580bbdfbb7 by Gilles Caulier.
Committed on 27/01/2022 at 15:53.
Pushed by cgilles into branch 'master'.

QT§ core now compile fine against openssl-linked

M  +1    -0    project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt
M  +0    -1    project/bundles/3rdparty/ext_qt/6.3/bootstrap-qt6.sh
M  +33   -13   project/bundles/3rdparty/ext_qt/6.3/qt-appimage-openssl-linked.patch

https://invent.kde.org/graphics/digikam/commit/f1a59f36e651149af3cd1656fe51db580bbdfbb7
Comment 16 caulier.gilles 2022-01-28 04:54:23 UTC
Git commit c31062cbf3b7b55aa485787c1e12f67832327b43 by Gilles Caulier.
Committed on 28/01/2022 at 04:52.
Pushed by cgilles into branch 'master'.

include O2 library manifest with git revision to all bundles.
Related: bug 114417

A  +2    -0    core/libs/dplugins/webservices/o2/o2_manifest.txt
M  +3    -0    project/bundles/appimage/03-build-digikam.sh
M  +3    -0    project/bundles/macports/03-build-digikam.sh
M  +3    -0    project/bundles/mxe/03-build-digikam.sh

https://invent.kde.org/graphics/digikam/commit/c31062cbf3b7b55aa485787c1e12f67832327b43
Comment 17 caulier.gilles 2022-01-28 09:49:40 UTC
Git commit fa85e18d67be4d517bbd00b91250df9687debc6d by Gilles Caulier.
Committed on 28/01/2022 at 09:48.
Pushed by cgilles into branch 'master'.

Qt 6.2.3 is just release today

R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/CMakeLists.txt [from: project/bundles/3rdparty/ext_qt/6.3/CMakeLists.txt - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/bootstrap-qt6.sh [from: project/bundles/3rdparty/ext_qt/6.3/bootstrap-qt6.sh - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/config_help_6.3.txt [from: project/bundles/3rdparty/ext_qt/6.3/config_help_6.3.txt - 100% similarity]
R  +1    -1    project/bundles/3rdparty/ext_qt/6.2/kde-qt6.sh [from: project/bundles/3rdparty/ext_qt/6.3/kde-qt6.sh - 099% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/qt-appimage-openssl-linked.patch [from: project/bundles/3rdparty/ext_qt/6.3/qt-appimage-openssl-linked.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/qt-appimage-support.patch [from: project/bundles/3rdparty/ext_qt/6.3/qt-appimage-support.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/qt-base-cmake.patch [from: project/bundles/3rdparty/ext_qt/6.3/qt-base-cmake.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt/6.2/qt-icu-hack.patch [from: project/bundles/3rdparty/ext_qt/6.3/qt-icu-hack.patch - 100% similarity]
M  +1    -1    project/bundles/appimage/config.sh

https://invent.kde.org/graphics/digikam/commit/fa85e18d67be4d517bbd00b91250df9687debc6d
Comment 18 caulier.gilles 2022-01-29 06:02:49 UTC
Git commit c6dd9e5b94182c53fbdb67e2a716d142d4b37f70 by Gilles Caulier.
Committed on 29/01/2022 at 06:01.
Pushed by cgilles into branch 'master'.

Adjust patch for Qt6.2.3

M  +0    -17   project/bundles/3rdparty/ext_qt/6.2/qt-appimage-openssl-linked.patch

https://invent.kde.org/graphics/digikam/commit/c6dd9e5b94182c53fbdb67e2a716d142d4b37f70
Comment 19 caulier.gilles 2022-01-29 14:33:22 UTC
QT DOWNSTREAM bug as compilation fail in QtWebEngine with 6.2.2 and 6.2.3 release:

https://bugreports.qt.io/browse/QTBUG-100320
Comment 20 caulier.gilles 2022-01-31 09:03:15 UTC
Qt team response : https://bugreports.qt.io/browse/QTBUG-100320?focusedCommentId=643695&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-643695

So, GCC9 is the lower version to use for Qt6 ==> go to Mageia 8

Gilles Caulier
Comment 21 caulier.gilles 2023-10-08 08:47:00 UTC
Git commit 4b516962a4033083e8a1051d8fe2c3ef8dce1459 by Gilles Caulier.
Committed on 08/10/2023 at 10:46.
Pushed by cgilles into branch 'master'.

prepare AppImage to comoile with Qt6 and kf6 frameworks

M  +6    -8    project/bundles/3rdparty/CMakeLists.txt
R  +0    -0    project/bundles/3rdparty/ext_kf5/CMakeLists.txt [from: project/bundles/3rdparty/ext_kde_frameworks/CMakeLists.txt - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/KF5DEPENDENCIES [from: project/bundles/3rdparty/ext_kde_frameworks/KF5DEPENDENCIES - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/breeze-dropsvg-rccprefix.patch [from: project/bundles/3rdparty/ext_kde_frameworks/breeze-dropsvg-rccprefix.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/extracmakemodules-compiler-options.patch [from: project/bundles/3rdparty/ext_kde_frameworks/extracmakemodules-compiler-options.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/kcalendarcore-libical.patch [from: project/bundles/3rdparty/ext_kde_frameworks/kcalendarcore-libical.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/kcoreaddons-mingw.patch [from: project/bundles/3rdparty/ext_kde_frameworks/kcoreaddons-mingw.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/kguiaddons-mingw.patch [from: project/bundles/3rdparty/ext_kde_frameworks/kguiaddons-mingw.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/ki18n-mingw.patch [from: project/bundles/3rdparty/ext_kde_frameworks/ki18n-mingw.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/kio-drop-ktextwidgets.patch [from: project/bundles/3rdparty/ext_kde_frameworks/kio-drop-ktextwidgets.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/knotifications-drop-phonon.patch [from: project/bundles/3rdparty/ext_kde_frameworks/knotifications-drop-phonon.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/knotifyconfig-drop-phonon.patch [from: project/bundles/3rdparty/ext_kde_frameworks/knotifyconfig-drop-phonon.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_kf5/threadweaver-macports.patch [from: project/bundles/3rdparty/ext_kde_frameworks/threadweaver-macports.patch - 100% similarity]
D  +0    -61   project/bundles/3rdparty/ext_qt/6.3.1/CMakeLists.txt
D  +0    -87   project/bundles/3rdparty/ext_qt/6.3.1/bootstrap-qt6.sh
D  +0    -95   project/bundles/3rdparty/ext_qt/6.3.1/kde-qt6.sh
D  +0    -15   project/bundles/3rdparty/ext_qt/6.3.1/qt-appimage-icu-linked.patch
D  +0    -83   project/bundles/3rdparty/ext_qt/6.3.1/qt-appimage-support.patch
D  +0    -10   project/bundles/3rdparty/ext_qt/6.3.1/qt-base-cmake.patch
D  +0    -13   project/bundles/3rdparty/ext_qt/6.3.1/qt-icu-hack.patch
D  +0    -11   project/bundles/3rdparty/ext_qt/CMakeLists.txt
R  +0    -0    project/bundles/3rdparty/ext_qt5/CMakeLists.txt [from: project/bundles/3rdparty/ext_qt/5.15/CMakeLists.txt - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt5/config_help-5.15.txt [from: project/bundles/3rdparty/ext_qt/5.15/config_help-5.15.txt - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt5/qt-appimage-openssl-linked.patch [from: project/bundles/3rdparty/ext_qt/5.15/qt-appimage-openssl-linked.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt5/qt-appimage-support.patch [from: project/bundles/3rdparty/ext_qt/5.15/qt-appimage-support.patch - 100% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt5/qt-icu-hack.patch [from: project/bundles/3rdparty/ext_qt/5.15/qt-icu-hack.patch - 100% similarity]
A  +68   -0    project/bundles/3rdparty/ext_qt6/CMakeLists.txt
A  +90   -0    project/bundles/3rdparty/ext_qt6/config-qt6-linux.cmake
A  +87   -0    project/bundles/3rdparty/ext_qt6/config-qt6-windows.cmake
R  +18   -7    project/bundles/3rdparty/ext_qt6/config_help-6.5.txt [from: project/bundles/3rdparty/ext_qt/6.3.1/config_help_6.3.txt - 093% similarity]
R  +0    -0    project/bundles/3rdparty/ext_qt6/qt6-openssl-linked.patch [from: project/bundles/3rdparty/ext_qt/6.3.1/qt-appimage-openssl-linked.patch - 100% similarity]
A  +10   -0    project/bundles/3rdparty/ext_qt6/qt6_cmake_path.patch.cmake.in
M  +12   -24   project/bundles/appimage/01-build-host.sh
M  +3    -3    project/bundles/appimage/03-build-digikam.sh
M  +1    -1    project/bundles/appimage/04-build-appimage.sh
M  +4    -4    project/bundles/appimage/config.sh
M  +1    -1    project/bundles/macports/config.sh
M  +1    -1    project/bundles/mxe/config.sh

https://invent.kde.org/graphics/digikam/-/commit/4b516962a4033083e8a1051d8fe2c3ef8dce1459
Comment 22 caulier.gilles 2023-10-08 09:02:54 UTC
Git commit a6283f2c9ba2877e290c8f4a7509668282deee8c by Gilles Caulier.
Committed on 08/10/2023 at 11:02.
Pushed by cgilles into branch 'master'.

add kf6 rules

A  +117  -0    project/bundles/3rdparty/ext_kf6/CMakeLists.txt
A  +122  -0    project/bundles/3rdparty/ext_kf6/breeze-dropsvg-rccprefix.patch
A  +22   -0    project/bundles/3rdparty/ext_kf6/kio-drop-deps.patch
A  +12   -0    project/bundles/3rdparty/ext_kf6/kitemmodels-drop-qml.patch

https://invent.kde.org/graphics/digikam/-/commit/a6283f2c9ba2877e290c8f4a7509668282deee8c
Comment 23 caulier.gilles 2023-10-13 08:30:19 UTC
Git commit d2ab01e8b9ec3eebf68b69ef955d5454289ef433 by Gilles Caulier.
Committed on 13/10/2023 at 10:27.
Pushed by cgilles into branch 'master'.

Qt 6.5.3 + KF6 from Master + digiKam compile now for the next main AppImage bundle

M  +3    -2    project/bundles/3rdparty/ext_kf6/CMakeLists.txt
M  +10   -1    project/bundles/3rdparty/ext_kf6/breeze-common-rules.patch
D  +0    -122  project/bundles/3rdparty/ext_kf6/breeze-dropsvg-rccprefix.patch
M  +0    -4    project/bundles/3rdparty/ext_kf6/kf6-create-manifest.sh
M  +25   -3    project/bundles/appimage/02-build-extralibs.sh

https://invent.kde.org/graphics/digikam/-/commit/d2ab01e8b9ec3eebf68b69ef955d5454289ef433
Comment 24 caulier.gilles 2023-10-16 12:05:26 UTC
Git commit 3dc6591e8d55ea45ad429351e7b08a1aa99d3d6b by Gilles Caulier.
Committed on 16/10/2023 at 14:02.
Pushed by cgilles into branch 'master'.

Finalize the Qt6/KF6 AppImage bundle build script.
FIXED-IN: 8.2.0

D  +0    -692  project/bundles/appimage/04-build-appimage-qt6.sh
M  +20   -7    project/bundles/appimage/04-build-appimage.sh

https://invent.kde.org/graphics/digikam/-/commit/3dc6591e8d55ea45ad429351e7b08a1aa99d3d6b
Comment 25 caulier.gilles 2023-10-20 07:47:30 UTC
Maik,

In the unstable sub dir from the download KDE area, there is a new AppImage 8.2.0 based on Qt6:

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

There is a problem at startup. If Color Management is enabled, it crash at startup to get the X11 color profile :

Digikam::CollectionScanner::completeScan: Complete scan (file scanning deferred) took: 3 msecs.
Digikam::IccSettings::Private::scanDirectories: QList("/usr/share/color/icc", "/home/gilles/.local/share/icc")
Digikam::DMetadataSettingsContainer::readFromConfig: Does not contain  "Caption"  Namespace

Thread 1 "digikam" received signal SIGSEGV, Segmentation fault.
0x00007fffe6ceb824 in XInternAtom () from /lib/x86_64-linux-gnu/libX11.so.6
(gdb) bt
#0  0x00007fffe6ceb824 in XInternAtom () from /lib/x86_64-linux-gnu/libX11.so.6
#1  0x00007ffff618138e in Digikam::IccSettings::Private::profileFromWindowSystem (this=0x5555556ec9b0, widget=widget@entry=0x5555557daec0)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccsettings_p_qt6.cpp:213
#2  0x00007ffff60d8367 in Digikam::IccSettings::monitorProfile (
    this=0x7ffff6ddfdb0 <QGlobalStatic<QtGlobalStatic::Holder<Digikam::(anonymous namespace)::Q_QGS_creator> >::instance()::holder>, widget=widget@entry=0x5555557daec0)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccsettings.cpp:63
#3  0x00007ffff60c6ef6 in Digikam::IccManager::displayProfile (displayingWidget=displayingWidget@entry=0x5555557daec0)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccmanager.cpp:381
#4  0x00007ffff62e5f1b in Digikam::ThumbnailLoadThread::setDisplayingWidget (widget=widget@entry=0x5555557daec0)
    at /b/master/dktemp/digikam-master/core/libs/threadimageio/thumb/thumbnailloadthread.cpp:160
#5  0x00007ffff7494c57 in Digikam::DigikamApp::DigikamApp (this=this@entry=0x5555557daec0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
    at /b/master/dktemp/digikam-master/core/app/main/digikamapp.cpp:79
#6  0x000055555555aae1 in main (argc=<optimized out>, argv=<optimized out>) at /b/master/dktemp/digikam-master/core/app/main/main.cpp:424
(gdb) f 1
#1  0x00007ffff618138e in Digikam::IccSettings::Private::profileFromWindowSystem (this=0x5555556ec9b0, widget=widget@entry=0x5555557daec0)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccsettings_p_qt6.cpp:213
213	    static Atom icc_atom = XInternAtom(display(), atomName.toLatin1().constData(), True);
(gdb) display()
A syntax error in expression, near `)'.
(gdb) q

For the moment, i have no idea why the dysfunction appear...

Gilles
Comment 26 caulier.gilles 2023-10-20 10:55:41 UTC
Maik,

#1  0x00007ffff61813b1 in Digikam::IccSettings::Private::profileFromWindowSystem (this=0x5555557b45a0, widget=widget@entry=0x55555580aa60)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccsettings_p_qt6.cpp:216
...
(gdb) f 1
#1  0x00007ffff61813b1 in Digikam::IccSettings::Private::profileFromWindowSystem (this=0x5555557b45a0, widget=widget@entry=0x55555580aa60)
    at /b/master/dktemp/digikam-master/core/libs/dimg/filters/icc/iccsettings_p_qt6.cpp:216
216	    static Atom icc_atom = XInternAtom(disp, atomName.toLatin1().constData(), True);
(gdb) p disp
$1 = (Display * const) 0x0        <===============!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
(gdb) p atomName
$2 = {d = {d = 0x5555558141f0, ptr = 0x555555814200 u"_ICC_PROFILE", size = 12}, static _empty = 0 u'\000'}
(gdb) 

The display instance is null...

In Qt5 we use this call : QX11Info::display()
With Qt6 we use this X11 lib call : display()

... as QX11Info API have been dropped in Qt6.

Gilles
Comment 27 caulier.gilles 2023-10-20 12:19:46 UTC
Git commit 29962c025dcbdfe8e00ce7a9abccd1e7df020aeb by Gilles Caulier.
Committed on 20/10/2023 at 14:18.
Pushed by cgilles into branch 'master'.

Qt >= 6.4 provide a private QtGui header with a partially restored QX11Info class.

M  +1    -16   core/libs/dimg/CMakeLists.txt
D  +0    -268  core/libs/dimg/filters/icc/iccsettings_p_qt6.cpp
R  +7    -3    core/libs/dimg/filters/icc/iccsettings_p_x11.cpp [from: core/libs/dimg/filters/icc/iccsettings_p_qt5.cpp - 094% similarity]

https://invent.kde.org/graphics/digikam/-/commit/29962c025dcbdfe8e00ce7a9abccd1e7df020aeb
Comment 28 caulier.gilles 2024-04-18 16:35:42 UTC
The bundle compile and run with Qt 6.7.0 + KF 6.2.0.

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

Bundle will be online in a few minutes at usual place to be used in production :

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

Best

Gilles Caulier
Comment 29 caulier.gilles 2024-04-18 17:37:36 UTC
Screenshot of Qt6 AppImage bundle running under Kubuntu 23.10:

https://imgur.com/a/Qk2oiXk
Comment 30 Maik Qualmann 2024-04-18 20:29:27 UTC
Hi Gilles,

A preload is required here under openSUSE Tumbleweed:

LD_PRELOAD=/usr/lib64/libnettle.so.8

Furthermore, no Qt MySQL driver seems to be included.

Best

Maik
Comment 31 caulier.gilles 2024-04-19 04:13:47 UTC
Hi Maik,

>Furthermore, no Qt MySQL driver seems to be included.

The mysql dependencies are installed on the Ubuntu 22.04 VM :

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/appimage/host_ubuntu.inc?ref_type=heads#L108
https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/appimage/host_ubuntu.inc?ref_type=heads#L133

And Qt 6.7.0 is compiled with Qt Mysql plugin :

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/3rdparty/ext_qt6/config-qt6-linux.cmake?ref_type=heads#L23

So i suspect a final packaging problem...

Gilles
Comment 32 caulier.gilles 2024-04-19 04:23:00 UTC
Maik,

Run  the digiKam-8.4.0-20240418T164142-x86-64-Qt6.appimage bundle with the "--appimage-extract" option and look like the mysql Qt6 plugin is present :

gilles@KU23:~/Downloads/squashfs-root/usr/plugins/sqldrivers$ pwd
/home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers
gilles@KU23:~/Downloads/squashfs-root/usr/plugins/sqldrivers$ ll
total 1616
drwxr-xr-x  2 gilles gilles    4096 Apr 19 06:18 .
drwxr-xr-x 26 gilles gilles    4096 Apr 19 06:18 ..
-rw-r--r--  1 gilles gilles 1544184 Apr 19 06:18 libqsqlite.so
-rw-r--r--  1 gilles gilles   99656 Apr 19 06:18 libqsqlmysql.so
gilles@KU23:~/Downloads/squashfs-root/usr/plugins/sqldrivers$

Gilles
Comment 33 Maik Qualmann 2024-04-19 06:32:03 UTC
Hi Gilles,

I have activated qt debugging, the Qt-MySQL driver cannot be loaded because the "libmysqlclient.so.21" is not found.
It looks like there are only the MariaDB counterparts in the system, and the package manager is also silent about "libmysqlclient".

Maik
Comment 34 caulier.gilles 2024-04-19 07:56:57 UTC
ok, i will take a look about this problem while this evening

Gilles
Comment 35 caulier.gilles 2024-04-19 15:31:48 UTC
Typically the mysql Qt plugin use the lib mysql client from the host, not for the bundle :

gilles@KU23:~/Downloads/squashfs-root/usr/plugins/sqldrivers$ ldd libqsqlmysql.so 
        linux-vdso.so.1 (0x00007fffc2d46000)
        libmysqlclient.so.21 => /lib/x86_64-linux-gnu/libmysqlclient.so.21 (0x0000740d40400000)     <<<<<<!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        libQt6Sql.so.6 => /home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers/./../../lib/libQt6Sql.so.6 (0x0000740d40b07000)
        libQt6Core.so.6 => /home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers/./../../lib/libQt6Core.so.6 (0x0000740d3fc00000)
        libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x0000740d3f800000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000740d3f400000)
        libssl.so.3 => /lib/x86_64-linux-gnu/libssl.so.3 (0x0000740d4035b000)
        libcrypto.so.3 => /lib/x86_64-linux-gnu/libcrypto.so.3 (0x0000740d3ee00000)
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x0000740d40af3000)
        libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x0000740d3fb49000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x0000740d40acf000)
        /lib64/ld-linux-x86-64.so.2 (0x0000740d40b9d000)
        libicui18n.so.70 => /home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers/./../../lib/libicui18n.so.70 (0x0000740d3ea00000)
        libicuuc.so.70 => /home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers/./../../lib/libicuuc.so.70 (0x0000740d3e805000)
        libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x0000740d3f6b9000)
        libz.so.1 => /home/gilles/Downloads/squashfs-root/usr/plugins/sqldrivers/./../../lib/libz.so.1 (0x0000740d40ab1000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x0000740d3f315000)
        libicudata.so.70 => not found
        libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x0000740d3faae000)

Gilles
Comment 36 caulier.gilles 2024-04-19 15:34:22 UTC
And look this one :

gilles@KU23:~/Downloads/squashfs-root/usr/plugins/sqldrivers$ ldd libqsqlmysql.so 
        libicudata.so.70 => not found      <<<<< !!!!!!!!!!!!!!!!!!
Comment 37 caulier.gilles 2024-04-19 18:17:00 UTC
Git commit d7ddc7119ab1d10583f3aca612c30dee3414f44b by Gilles Caulier.
Committed on 19/04/2024 at 18:15.
Pushed by cgilles into branch 'master'.

AppImage: parse Qt sql drivers dependencies

M  +6    -0    project/bundles/appimage/04-build-appimage.sh

https://invent.kde.org/graphics/digikam/-/commit/d7ddc7119ab1d10583f3aca612c30dee3414f44b
Comment 38 Maik Qualmann 2024-04-19 21:35:56 UTC
Great, MySQL works here now.

Maik
Comment 39 caulier.gilles 2024-04-20 05:55:06 UTC
Git commit e9419a3bd6a92934cd3449df94544c91e44ab5b5 by Gilles Caulier.
Committed on 20/04/2024 at 05:53.
Pushed by cgilles into branch 'master'.

Add list of available Qt sql drivers in Help/Components Info dialog

M  +6    -3    core/app/views/utils/componentsinfodlg.cpp

https://invent.kde.org/graphics/digikam/-/commit/e9419a3bd6a92934cd3449df94544c91e44ab5b5