Bug 512698

Summary: Build failure when building Skrooge from source on Fedora 43
Product: [Applications] skrooge Reporter: Johannes Goller <j>
Component: generalAssignee: Stephane MANKOWSKI <stephane>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: 25.4.0   
Target Milestone: 25.1.0   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Johannes Goller 2025-11-27 19:42:06 UTC
SUMMARY
On Fedora 43, Skrooge fails to build from source.

STEPS TO REPRODUCE
1. Install dependencies [1]
2. Obtain source package and unpack
3. cd skrooge-25.4.0
4. mkdir build && cd build
5. cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DQT_PLUGIN_INSTALL_DIR=`qmake6 -query QT_INSTALL_PLUGINS` -DCMAKE_BUILD_TYPE=debug -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -DSKG_DESIGNER=OFF -DQT_MAJOR_VERSION=6
6. make

[1] These are the dependencies I install:

```bash
sudo dnf install gcc gcc-c++ make automake kernel-devel pkg-config \
cmake devscripts cdbs extra-cmake-modules glibc kf6-kconfig \
kf6-kcoreaddons kf6-kdbusaddons kf6-kdbusaddons-devel kf6-ki18n \
libstdc++ qt6-qtbase qt6-qtbase-gui qt6-qtdeclarative skrooge-libs \
sqlite3 sqlcipher sqlcipher-devel libsqlite3x-devel libofx-devel \
boost-devel xsltproc kf6-ktexttemplate-devel qt6-qttools-devel \
qt6-qtwebengine-devel kf6-kcoreaddons-devel kf6-kwallet-devel \
kf6-kparts-devel kf6-knewstuff-devel kf6-kiconthemes-devel \
kf6-kactivities-devel qt6-qtdeclarative-devel qt6-qtbase-devel \
kf6-knotifications-devel kf6-kstatusnotifieritem-devel \
qt6-qt5compat-devel kf6-kguiaddons-devel qt6-qtsvg-devel \
kf6-knotifyconfig-devel grantlee-qt5-devel kf6-karchive-devel \
kf6-kxmlgui-devel kf6-knotifyconfig-devel kf6-krunner-devel \
kf6-plasma kf6-kdoctools-devel qca-qt6-devel kf6-kactivities-devel \
qt6-qtdeclarative-devel qt6-qtquickcontrols2-devel \
kf6-kirigami2-devel qt6-qtbase-private-devel
```

OBSERVED RESULT
Build failure in libskgsqlcipher_autogen:

[  3%] Built target libskgsqlcipher_autogen
[  3%] Building CXX object skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/libskgsqlcipher_autogen/mocs_compilation.cpp.o
[  3%] Building CXX object skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/skgsqlcipherdriverplugin.cpp.o
[  3%] Building CXX object skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/q6sql_sqlite.cpp.o
/fastspace/clones/skrooge/skgsqlcipher/q6sql_sqlite.cpp:6:10: fatal error: QtSql/private/qsqlcachedresult_p.h: No such file or directory
    6 | #include <QtSql/private/qsqlcachedresult_p.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/build.make:113: skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/q6sql_sqlite.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2866: skgsqlcipher/CMakeFiles/libskgsqlcipher.dir/all] Error 2
make: *** [Makefile:146: all] Error 2


EXPECTED RESULT
Build success

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora 43, Kernel 6.17.8-300.fc43
KDE Plasma Version: 6.5.3
KDE Frameworks Version: 6.20.0
Qt Version: 6.10.1

ADDITIONAL INFORMATION
Might be the same cause as the flatpak build failure reported here: https://bugs.kde.org/show_bug.cgi?id=502553

I am able to resolve the issue by adding the `SqlPrivate` dependency to skgsqlcipher/CMakeLists.txt.
Comment 1 Johannes Goller 2025-11-27 20:03:07 UTC
I can see it's been fixed for 25.10: https://invent.kde.org/office/skrooge/-/commit/38bb99c348c6dc9ca861d636f06f176731f5a291

Unfortunately that version has other problems on Fedora 43 / KDE. Still, I'll set this bug report to resolved.