<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>512862</bug_id>
          
          <creation_ts>2025-12-02 11:59:30 +0000</creation_ts>
          <short_desc>digikam failed to start</short_desc>
          <delta_ts>2026-02-15 17:51:42 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>digikam</product>
          <component>Portability-Runtime</component>
          <version>8.8.0</version>
          <rep_platform>Neon</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="pipapo">piral</reporter>
          <assigned_to name="Digikam Developers">digikam-bugs-null</assigned_to>
          <cc>caulier.gilles</cc>
    
    <cc>KDE</cc>
    
    <cc>metzpinguin</cc>
    
    <cc>stephanolbrich</cc>
          
          <cf_commitlink>https://invent.kde.org/graphics/digikam/-/commit/8cd515299607b47952a8cba5807117de52ba6f1c</cf_commitlink>
          <cf_versionfixedin>9.0.0</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2474038</commentid>
    <comment_count>0</comment_count>
    <who name="pipapo">piral</who>
    <bug_when>2025-12-02 11:59:30 +0000</bug_when>
    <thetext>Description:
When launching digiKam (native package under KDE Neon), the application immediately aborts with:
ASSERT failure in KCatalogPrivate::setupGettextEnv: &quot;You need to instantiate a Q*Application before using KCatalog&quot;, file kcatalog.cpp, line 306

Steps to reproduce:
1. Use KDE Neon (latest)
2. Install digiKam from Neon repository (apt install digikam)
3. Run &apos;digikam&apos; from terminal

Expected result:
digiKam GUI starts normally.

Actual result:
Immediate abort with assertion message (as above).

digikam Version: 4:8.8.0-0zneon+24.04+noble+release+build27

Operating System: KDE neon User Edition
KDE Plasma Version: 6.5.3
KDE Frameworks Version: 6.20.0
Qt Version: 6.10.0
Graphics Platform: Wayland
Processors: 8 × Intel® Core™ i7-8665U CPU @ 1.90GHz
Memory: 32 GiB of RAM (31.0 GiB usable)
Graphics Processor: Intel® UHD Graphics 620

Please let me know if you need logs, backtraces or other diagnostic data — I’m happy to help.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474041</commentid>
    <comment_count>1</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2025-12-02 12:12:41 +0000</bug_when>
    <thetext>Sounds like you use Snap package. Please report this problem to the NEON team as given here :

https://www.digikam.org/download/binary/#linux-sandbox</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474042</commentid>
    <comment_count>2</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2025-12-02 12:13:37 +0000</bug_when>
    <thetext>Yes, the message appears at program startup; I&apos;ve already tried to narrow down the problem.
Apparently, an ASSERT statement is being triggered, and Neo is configured to terminate the program when this happens.
So, we&apos;re using a string to be translated before the actual QApplication is created.

Please create a GDB backtrace.

gdb digikam
r + Enter
...Crash...
bt + Enter

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474078</commentid>
    <comment_count>3</comment_count>
    <who name="pipapo">piral</who>
    <bug_when>2025-12-02 15:54:25 +0000</bug_when>
    <thetext>(In reply to caulier.gilles from comment #1)
&gt; Sounds like you use Snap package. Please report this problem to the NEON
&gt; team as given here :
&gt; 
&gt; https://www.digikam.org/download/binary/#linux-sandbox

I installed it with apt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474081</commentid>
    <comment_count>4</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2025-12-02 15:59:06 +0000</bug_when>
    <thetext>Please get a GDB backtrace as explained here :

https://www.digikam.org/contribute/#native-package</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474083</commentid>
    <comment_count>5</comment_count>
    <who name="pipapo">piral</who>
    <bug_when>2025-12-02 16:08:11 +0000</bug_when>
    <thetext>(In reply to Maik Qualmann from comment #2)
&gt; Yes, the message appears at program startup; I&apos;ve already tried to narrow
&gt; down the problem.
&gt; Apparently, an ASSERT statement is being triggered, and Neo is configured to
&gt; terminate the program when this happens.
&gt; So, we&apos;re using a string to be translated before the actual QApplication is
&gt; created.
&gt; 
&gt; Please create a GDB backtrace.
&gt; 
&gt; gdb digikam
&gt; r + Enter
&gt; ...Crash...
&gt; bt + Enter
&gt; 
&gt; Maik

Here&apos;s what I get in the Terminal. I hope this is usefull.

(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=&lt;optimized out&gt;) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=&lt;optimized out&gt;) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=&lt;optimized out&gt;, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007ffff364527e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007ffff36288ff in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007ffff433e1c3 in qAbort () at /usr/src/qt6-base-6.10.0-0zneon+24.04+noble+release+build138/src/corelib/global/qassert.cpp:46
#6  qt_maybe_message_fatal&lt;QString&amp;&gt; (message=..., context=&lt;optimized out&gt;, msgType=QtFatalMsg)
at /usr/src/qt6-base-6.10.0-0zneon+24.04+noble+release+build138/src/corelib/global/qlogging.cpp:2165
#7  qt_message(QtMsgType, const QMessageLogContext &amp;, const char *, typedef __va_list_tag __va_list_tag *)
(msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7ffff404df08 &quot;ASSERT failure in %s: \&quot;%s\&quot;, file %s, line %d&quot;, ap=ap@entry=0x7fffffffd0e8)
at /usr/src/qt6-base-6.10.0-0zneon+24.04+noble+release+build138/src/corelib/global/qlogging.cpp:412
#8  0x00007ffff433fa89 in QMessageLogger::fatal (this=&lt;optimized out&gt;, msg=0x7ffff404df08 &quot;ASSERT failure in %s: \&quot;%s\&quot;, file %s, line %d&quot;)
at /usr/src/qt6-base-6.10.0-0zneon+24.04+noble+release+build138/src/corelib/global/qlogging.cpp:901
#9  0x00007ffff432a541 in qt_assert_x
(where=where@entry=0x7ffff6eaa9a8 &quot;KCatalogPrivate::setupGettextEnv&quot;, what=what@entry=0x7ffff6eaa968 &quot;You need to instantiate a Q*Application before using KCatalog&quot;, file=file@entry=0x7ffff6ead241 &quot;./src/i18n/kcatalog.cpp&quot;, line=line@entry=306)
at /usr/src/qt6-base-6.10.0-0zneon+24.04+noble+release+build138/src/corelib/global/qassert.cpp:122
#10 0x00007ffff6e49872 in KCatalogPrivate::setupGettextEnv (this=0x555555add020) at /usr/src/kf6-ki18n-6.20.0-0zneon+24.04+noble+release+build34/src/i18n/kcatalog.cpp:306
#11 0x00007ffff6e63f22 in KCatalog::translate (this=0x555555add640, msgctxt=..., msgid=...) at /usr/include/c++/13/bits/unique_ptr.h:199
#12 0x00007ffff6e59d4f in KLocalizedStringPrivate::translateRaw (msgstr=..., language=..., n=0, msgid_plural=..., msgid=..., msgctxt=..., languages=..., domain=...)
at /usr/src/kf6-ki18n-6.20.0-0zneon+24.04+noble+release+build34/src/i18n/klocalizedstring.cpp:466
#13 KLocalizedStringPrivate::toString
(this=0x555555adb7e0, domain=&lt;optimized out&gt;, languages=&lt;optimized out&gt;, format=Kuit::UndefinedFormat, isArgument=isArgument@entry=false)
at /usr/src/kf6-ki18n-6.20.0-0zneon+24.04+noble+release+build34/src/i18n/klocalizedstring.cpp:534
#14 0x00007ffff6e5a445 in KLocalizedString::toString (this=this@entry=0x7fffffffd770)
at /usr/src/kf6-ki18n-6.20.0-0zneon+24.04+noble+release+build34/src/i18n/klocalizedstring.cpp:481
#15 0x00007ffff5da6e08 in i18ndc (domain=&lt;optimized out&gt;, context=&lt;optimized out&gt;, text=&lt;optimized out&gt;) at /usr/include/KF6/KI18n/klocalizedstring.h:1546
#16 0x00007ffff5cdf76a in __static_initialization_and_destruction_0 ()
at /usr/src/digikam-4:8.8.0-0zneon+24.04+noble+release+build27/core/libs/dialogs/libsinfodlg_p.cpp:21
#17 _GLOBAL__sub_I_libsinfodlg_p.cpp(void) () at /usr/src/digikam-4:8.8.0-0zneon+24.04+noble+release+build27/core/libs/dialogs/libsinfodlg_p.cpp:111
#18 0x00007ffff7fca71f in call_init (l=&lt;optimized out&gt;, argc=argc@entry=1, argv=argv@entry=0x7fffffffd978, env=env@entry=0x7fffffffd988) at ./elf/dl-init.c:74
#19 0x00007ffff7fca824 in call_init (env=&lt;optimized out&gt;, argv=&lt;optimized out&gt;, argc=&lt;optimized out&gt;, l=&lt;optimized out&gt;) at ./elf/dl-init.c:120
#20 _dl_init (main_map=0x7ffff7ffe2e0, argc=1, argv=0x7fffffffd978, env=0x7fffffffd988) at ./elf/dl-init.c:121
#21 0x00007ffff7fe45a0 in _dl_start_user () at /lib64/ld-linux-x86-64.so.2
#22 0x0000000000000001 in ??? ()
#23 0x00007fffffffddd3 in ??? ()
#24 0x0000000000000000 in ??? ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474087</commentid>
    <comment_count>6</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2025-12-02 16:22:43 +0000</bug_when>
    <thetext>Yes, that&apos;s clear, they are the static strings for &quot;Yes&quot; and &quot;No&quot; in the component dialog.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2474149</commentid>
    <comment_count>7</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2025-12-02 21:18:35 +0000</bug_when>
    <thetext>Git commit 8cd515299607b47952a8cba5807117de52ba6f1c by Maik Qualmann.
Committed on 02/12/2025 at 21:17.
Pushed by mqualmann into branch &apos;master&apos;.

fix access to translation before a QApplication was created
FIXED-IN: 8.9.0

M  +1    -1    NEWS
M  +9    -9    core/libs/dialogs/libsinfodlg_features.cpp
M  +12   -12   core/libs/dialogs/libsinfodlg_libraries.cpp
M  +13   -13   core/libs/dialogs/libsinfodlg_opencv.cpp
M  +11   -3    core/libs/dialogs/libsinfodlg_p.cpp
M  +2    -2    core/libs/dialogs/libsinfodlg_p.h

https://invent.kde.org/graphics/digikam/-/commit/8cd515299607b47952a8cba5807117de52ba6f1c</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2477725</commentid>
    <comment_count>8</comment_count>
    <who name="Stephan Olbrich">stephanolbrich</who>
    <bug_when>2025-12-17 20:46:36 +0000</bug_when>
    <thetext>For everybody who needs a workaround until 8.9.0 is available, starting digikam with C locale did the trick for me. Language is english then.

LANG=C.UTF-8 digikam</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2477944</commentid>
    <comment_count>9</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2025-12-18 19:35:22 +0000</bug_when>
    <thetext>The problem is that Neon compiled Qt with the &quot;debug&quot; option enabled for exceptions. This is normally intended for developers; a QASSERT is meant to alert them that something is wrong. Qt for end users should be compiled so that a QASSERT doesn&apos;t cause the program to break

So the only options left are Neon patch the digiKam-8.8.0 code or you use our AppImage.

Maik</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>