Hello,
Using kde-neon extension,
I have 2 questions:
1/ How to test a snap with a beta version of ‘kf6-core24-sdk’ used by the kde-neon extension ?
2/ How to manage the production of snap-app dependencies and especially the ones from extensions ? Snaps are automatically updated. If a snap-library like ‘kf6-core24’ has a new version published and is no more compatible with a snap-app, there seems to be no info in snaps and no way to prevent fails when launching snap-app, nor automatic multiplicity of the snap-library to keep dependencies.
Thanks <3
@sgmoore can likely speak to this.
1 Like
Its true with the extensions. I maintain the neon extension and struggle with apps and compatibility with just KDE apps, I have no way of knowing my updates are breaking other snapcrafters apps. QT6 is supposed to be ABI compatible but things seem to go wrong, often, if the snaps are not built with the same version as runtime. The current beta qt6/kf6 is broken. The snaps don’t start. I am working on it the best I can. Time is not my friend these days.
I lost access to sgmoore and I am scarlettmoore these days, thanks!
1 Like
The latest release again broke existing builds
2026-03-07T18:27:37.2573210Z :: gmake: *** [Makefile:146: all] Error 2
2026-03-07T18:27:37.2596383Z Failed to run the build script for part 'whatsup'.
2026-03-07T18:27:37.2603351Z Detailed information:
2026-03-07T18:27:37.2605168Z :: + cmake /root/parts/whatsup/src -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-s -DCMAKE_CXX_FLAGS=-s -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
2026-03-07T18:27:37.2607803Z :: Installing in /usr. Run /root/parts/whatsup/build/prefix.sh to set the environment for whatsup.
2026-03-07T18:27:37.2608540Z :: CMake Warning (dev) at /snap/cmake/1515/share/cmake-4.2/Modules/FindPackageHandleStandardArgs.cmake:493 (message):
2026-03-07T18:27:37.2609198Z :: The package name passed to find_package_handle_standard_args() (PkgConfig)
2026-03-07T18:27:37.2609682Z :: does not match the name of the calling package (uap-cpp). This can lead to
2026-03-07T18:27:37.2610135Z :: problems in calling code that expects find_package() result variables
2026-03-07T18:27:37.2614459Z :: (e.g., `_FOUND`) to follow a certain pattern.
2026-03-07T18:27:37.2614822Z :: Call Stack (most recent call first):
2026-03-07T18:27:37.2615317Z :: /snap/cmake/1515/share/cmake-4.2/Modules/FindPkgConfig.cmake:562 (find_package_handle_standard_args)
2026-03-07T18:27:37.2615950Z :: /root/stage/usr/lib/x86_64-linux-gnu/cmake/uap-cpp/uap-cppConfig.cmake:38 (include)
2026-03-07T18:27:37.2616554Z :: /snap/cmake/1515/share/cmake-4.2/Modules/CMakeFindDependencyMacro.cmake:93 (find_package)
2026-03-07T18:27:37.2617203Z :: /snap/cmake/1515/share/cmake-4.2/Modules/CMakeFindDependencyMacro.cmake:125 (__find_dependency_common)
2026-03-07T18:27:37.2617836Z :: /root/stage/usr/lib/x86_64-linux-gnu/cmake/uap-qt/uap-qtConfig.cmake:38 (find_dependency)
2026-03-07T18:27:37.2618259Z :: CMakeLists.txt:44 (find_package)
2026-03-07T18:27:37.2618625Z :: This warning is for project developers. Use -Wno-dev to suppress it.
2026-03-07T18:27:37.2619289Z :: CMake Warning (dev) at /snap/kde-qt6-core24-sdk/current/usr/lib/x86_64-linux-gnu/cmake/Qt6Core/Qt6CoreMacros.cmake:3530 (message):
2026-03-07T18:27:37.2619924Z :: Qt policy QTP0004 is not set: You need qmldir files for each extra
2026-03-07T18:27:37.2620334Z :: directory that contains .qml files for your module. Check
2026-03-07T18:27:37.2620996Z :: https://doc.qt.io/qt-6/qt-cmake-policy-qtp0004.html for policy details.
2026-03-07T18:27:37.2621758Z :: Use the qt_policy command to set the policy and suppress this warning.
2026-03-07T18:27:37.2622112Z :: Call Stack (most recent call first):
2026-03-07T18:27:37.2622661Z :: /snap/kde-qt6-core24-sdk/current/usr/lib/x86_64-linux-gnu/cmake/Qt6Qml/Qt6QmlMacros.cmake:3873 (__qt_internal_setup_policy)
2026-03-07T18:27:37.2623473Z :: /snap/kde-qt6-core24-sdk/current/usr/lib/x86_64-linux-gnu/cmake/Qt6Qml/Qt6QmlMacros.cmake:960 (qt6_target_qml_sources)
2026-03-07T18:27:37.2624174Z :: /snap/kf6-core24-sdk/current/usr/share/ECM/modules/ECMQmlModule6.cmake:104 (qt6_add_qml_module)
2026-03-07T18:27:37.2624639Z :: src/CMakeLists.txt:22 (ecm_add_qml_module)
2026-03-07T18:27:37.2624999Z :: This warning is for project developers. Use -Wno-dev to suppress it.
2026-03-07T18:27:37.2625333Z :: CMake Warning:
2026-03-07T18:27:37.2625594Z :: Manually-specified variables were not used by the project:
2026-03-07T18:27:37.2626049Z :: CMAKE_C_FLAGS
2026-03-07T18:27:37.2626253Z :: + cmake --build . -- -j4
2026-03-07T18:27:37.2626814Z :: cc1plus: warning: /root/parts/whatsup/build/src/whatsup_staticplugin_autogen/include: No such file or directory [-Wmissing-include-dirs]
2026-03-07T18:27:37.2628567Z :: /snap/kde-qt6-core24-sdk/current/usr/lib/qt6/libexec/qmlcachegen: symbol lookup error: /snap/kde-qt6-core24-sdk/current/usr/lib/qt6/libexec/qmlcachegen: undefined symbol: _ZN12QQmlJSLogger15processMessagesE5QSpanIKN6QQmlJS17DiagnosticMessageELm18446744073709551615EEN6QQmlSA15LoggerWarningIdERKNS1_14SourceLocationE, version Qt_6_PRIVATE_API
2026-03-07T18:27:37.2630352Z :: gmake[2]: *** [src/CMakeFiles/whatsup_static.dir/build.make:117: src/.rcc/qmlcache/whatsup_static_qmlcache_loader.cpp] Error 127
2026-03-07T18:27:37.2631508Z :: gmake[2]: *** Waiting for unfinished jobs....
2026-03-07T18:27:37.2631930Z :: gmake[1]: *** [CMakeFiles/Makefile2:331: src/CMakeFiles/whatsup_static.dir/all] Error 2
2026-03-07T18:27:37.2632352Z :: gmake[1]: *** Waiting for unfinished jobs....
2026-03-07T18:27:37.2632956Z :: cc1plus: warning: /root/parts/whatsup/build/src/whatsup_staticplugin_autogen/include: No such file or directory [-Wmissing-include-dirs]
2026-03-07T18:27:37.2633552Z :: gmake: *** [Makefile:146: all] Error 2
If this is beta, yep as I mentioned above it is very broken. Carlos updated it and I don’t have time to sort out the issues. I will try a rebuild, otherwise reverting back to 6.10.1
No it is from latest stable
I am so sorry. Somehow the problem qt snap got promoted to stable. Lat known working qt re-promoted. What a mess. That’s what I get for trying to retire.
Thanks a lot. Build is passing now.
1 Like
Thanks all for your replies.
@aoyama
1/ You can’t do this for a remote build
2/ I’m pretty sure the sdk used is the one from the ‘kde-extension’ and thus snapcraft version and not the local one (the sdk is not specified in yaml file)
3/ Building own library
- remove the advantage of having one for several app
- requires special authorizations
- is complex enough especially with display, but also with new changes in both snapcraft and kde, that’s why it’s an extension.
Now,
As stated by @scarlettmoore – and thanks for your work – apps need to be compiled with same version of QT (even if supposedly quite compatible).
Thus,
For the building, it depends on ‘kde-neon’ extension, and thus snapcraft version.
So testing a QT sdk version changes would not be hermetic as related to other snapcraft changes.
It seems not possible to test a specific (or even the beta) version of QT sdk.
= There is no way to anticipate a new release of QT
There seems to be no way to specify, control or maintain a snap-library dependency for a snap-app.
e.g. specify a snap-library version (or range of versions) in yaml file
e.g. check if the QT runtime (kf6-core24) version is compatible with snap-app
There seems to be no way to have several versions of a snap-library, even less for snapcraft to manage them automatically.
e.g. having both QT6.11 and QT6.9 installed
= App can break if not updated with snap-library changes or not compatible with new versions of them ; not only the library/app linking, but also features deprecated… etc
Thanks <3