On Sat, 22 Nov 2025 22:02:13 +0500 Syed Shahrukh <[email protected]> wrote: > Yes I have now checked the bug #1120685, there seems to be > incompatibilities in ABI from sqlcipher 1 -> 2 and the kmymoney db > abstraction plugin is not ready for it. > > A sign is that preloading the older library solves the problem. > > There is only one removal of the symbol sqlcipher_exportFunc from 1->2 , > which is not used else kmymoney won;t be able to build. > > Presently the debug information is not sufficient to pinpoint the problem. > > I checked out the source of kmymoney, where I found that kmymoney is > utilizing the QT library QSqlDatabase sqlcipher plugin for DB access. > > The sqlite plugin seems like a variant of > https://github.com/sjemens/qsqlcipher-qt5 which supports upto sqlcipher > 4.5.3, no updates since 2022. > > Plugin path within the source: kmymoney/plugins/sqlcipher > > Debugging the issue with kmymoney targeting the sqlcipher plugin will > likely be the way forward.
Please find the backtrace in the attachment. Thanks, Boyuan Yang
#0 sqlcipher_find_db_index (db=0x0, zDb=0x7ffff53ba14d "main") at
./sqlite3.c:111826
db_index = <optimized out>
pDb = <optimized out>
#1 0x00007ffff52e7c8d in sqlite3_key_v2 (db=0x0, zDb=0x7ffff53ba14d "main",
pKey=0x0, nKey=0) at ./sqlite3.c:111850
db_index = <optimized out>
__func__ = "sqlite3_key_v2"
#2 0x0000555555644408 in KMyMoneyApp::KMyMoneyApp (this=0x555555ae6f50,
parent=<optimized out>, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
at ./kmymoney/kmymoney.cpp:1045
frame = <optimized out>
layout = <optimized out>
viewActions = {d = 0x0}
locale = {static DefaultTwoDigitBaseYear = 1900, d = {d = {ptr = 0x0}}}
frame = <optimized out>
layout = <optimized out>
viewActions = <optimized out>
locale = <optimized out>
it = <optimized out>
weekDay = <optimized out>
__for_range = <optimized out>
__for_begin = <optimized out>
__for_end = <optimized out>
#3 0x0000555555618a56 in main (argc=<optimized out>, argv=<optimized out>) at
./kmymoney/main.cpp:232
app = {<QGuiApplication> = {<QCoreApplication> = {<QObject> =
{_vptr.QObject = 0x7ffff6baaa28 <vtable for QApplication+16>, static
staticMetaObject = {d = {
superdata = {direct = 0x0},
stringdata = 0x7ffff58556d0
<_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>,
data = 0x7ffff58555c0
<_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>,
static_metacall = 0x7ffff55ffac0
<QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>,
relatedMetaObjects = 0x0,
metaTypes = 0x7ffff59de9c0
<_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>,
extradata = 0x0}}, d_ptr = {d = 0x55555594b540}}, static
staticMetaObject = {d = {superdata = {direct = 0x5555558fcc20
<QObject::staticMetaObject>},
stringdata = 0x7ffff5854c88
<_ZN16QCoreApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0+392>,
data = 0x7ffff5854b00
<_ZN16QCoreApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0>,
static_metacall = 0x7ffff55addf0
<QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int,
void**)>, relatedMetaObjects = 0x0,
metaTypes = 0x7ffff59de5c0
<_ZN16QCoreApplication36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_135qt_meta_tag_ZN16QCoreApplicationE_tEEE.lto_priv.0>,
extradata = 0x0}}, static self = 0x7fffffffd900}, static
staticMetaObject = {d = {superdata = {
direct = 0x7ffff59de640 <QCoreApplication::staticMetaObject>},
stringdata = 0x7ffff6108e50
<_ZN15QGuiApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0+752>,
data = 0x7ffff6108b60
<_ZN15QGuiApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0>,
static_metacall = 0x7ffff5c014a0
<QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int,
void**)>, relatedMetaObjects = 0x0,
metaTypes = 0x7ffff623c240
<_ZN15QGuiApplication36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_134qt_meta_tag_ZN15QGuiApplicationE_tEEE.lto_priv.0>,
extradata = 0x0}}}, static staticMetaObject = {d = {superdata =
{direct = 0x7ffff623c7e0 <QGuiApplication::staticMetaObject>},
stringdata = 0x7ffff6a40568
<_ZN12QApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0+392>,
data = 0x7ffff6a403e0
<_ZN12QApplication32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0>,
static_metacall = 0x7ffff65bc900
<QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>,
relatedMetaObjects = 0x0,
metaTypes = 0x7ffff6b9a7c0
<_ZN12QApplication36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_131qt_meta_tag_ZN12QApplicationE_tEEE.lto_priv.0>,
extradata = 0x0}}}
aboutData = {d = std::unique_ptr<KAboutDataPrivate> = {get() =
0x5555576de210}}
fileUrls = {<QListSpecialMethods<QString>> =
{<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d
= {d = 0x0, ptr = 0x0, size = 0}}
isNoCatchOption = false
isNoFileOption = false
file = <optimized out>
fname = {d = {d = 0x555555ae6830, ptr = 0x0, size = 0}, static _empty =
0 u'\000'}
url = {d = 0x555557653f70}
rc = <optimized out>
signature.asc
Description: This is a digitally signed message part

