Bug 367871 - CMakeLists.txt only requires Qt 5.2 while code requires Qt 5.6
Summary: CMakeLists.txt only requires Qt 5.2 while code requires Qt 5.6
Status: RESOLVED FIXED
Alias: None
Product: kdeconnect
Classification: Applications
Component: common (show other bugs)
Version: 1.0
Platform: Other Linux
: NOR minor
Target Milestone: ---
Assignee: Albert Vaca Cintora
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-08-26 19:55 UTC by Fabian Vogt
Modified: 2016-08-27 12:04 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fabian Vogt 2016-08-26 19:55:13 UTC
I noticed that kdeconnect 1.0 does not build against openSUSE Leap 42.1, which ships Qt 5.5.1.
This is due to usage of QSet::intersect in the code:

[  145s] /home/abuild/rpmbuild/BUILD/kdeconnect-kde-1.0/core/pluginloader.cpp: In member function 'QSet<QString> PluginLoader::pluginsForCapabilities(const QSet<QString>&, const QSet<QString>&)':
[  145s] /home/abuild/rpmbuild/BUILD/kdeconnect-kde-1.0/core/pluginloader.cpp:113:25: error: 'const class QSet<QString>' has no member named 'intersects'
[  145s]              || incoming.intersects(pluginOutgoingCapabilities) || outgoing.intersects(pluginIncomingCapabilities)) {
[  145s]                          ^
[  145s] /home/abuild/rpmbuild/BUILD/kdeconnect-kde-1.0/core/pluginloader.cpp:113:76: error: 'const class QSet<QString>' has no member named 'intersects'
[  145s]              || incoming.intersects(pluginOutgoingCapabilities) || outgoing.intersects(pluginIncomingCapabilities)) {
[  145s]                                                                             ^
[  145s] core/CMakeFiles/kdeconnectcore.dir/build.make:398: recipe for target 'core/CMakeFiles/kdeconnectcore.dir/pluginloader.cpp.o' failed

Reproducible: Always
Comment 1 Mark Fraser 2016-08-27 08:47:52 UTC
Same result in Kubuntu 16.04.

/home/mfraser/git/kdeconnect-kde/core/pluginloader.cpp: In member function ‘QSet<QString> PluginLoader::pluginsForCapabilities(const QSet<QString>&, const QSet<QString>&)’:
/home/mfraser/git/kdeconnect-kde/core/pluginloader.cpp:113:25: error: ‘const class QSet<QString>’ has no member named ‘intersects’
             || incoming.intersects(pluginOutgoingCapabilities) || outgoing.intersects(pluginIncomingCapabilities)) {
                         ^
/home/mfraser/git/kdeconnect-kde/core/pluginloader.cpp:113:76: error: ‘const class QSet<QString>’ has no member named ‘intersects’
             || incoming.intersects(pluginOutgoingCapabilities) || outgoing.intersects(pluginIncomingCapabilities)) {
                                                                            ^
core/CMakeFiles/kdeconnectcore.dir/build.make:398: recipe for target 'core/CMakeFiles/kdeconnectcore.dir/pluginloader.cpp.o' failed
make[2]: *** [core/CMakeFiles/kdeconnectcore.dir/pluginloader.cpp.o] Error 1
CMakeFiles/Makefile2:123: recipe for target 'core/CMakeFiles/kdeconnectcore.dir/all' failed
make[1]: *** [core/CMakeFiles/kdeconnectcore.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Comment 2 Aleix Pol 2016-08-27 12:04:57 UTC
Git commit 19788e9bb698908fc6d64cf2290768277db05daa by Aleix Pol.
Committed on 27/08/2016 at 11:54.
Pushed by apol into branch '1.x'.

Specify the required Qt version

M  +1    -1    CMakeLists.txt

http://commits.kde.org/kdeconnect-kde/19788e9bb698908fc6d64cf2290768277db05daa