BradyBrenot / huestacean

Philips Hue control app for desktop with screen syncing. C++ with Qt Quick GUI.
http://huestacean.com
Apache License 2.0
564 stars 54 forks source link

Can't build on Linux #103

Closed DeastinY closed 5 years ago

DeastinY commented 5 years ago

[ 86%] Building CXX object CMakeFiles/huestacean.dir/src/bridgediscovery.cpp.o [ 86%] Building CXX object CMakeFiles/huestacean.dir/src/entertainment.cpp.o [ 86%] Building CXX object CMakeFiles/huestacean.dir/src/huebridge.cpp.o [ 90%] Building CXX object CMakeFiles/huestacean.dir/src/huestacean.cpp.o /home/ric/projects/huestacean/src/huestacean.cpp: In constructor ‘Huestacean::Huestacean(QObject*)’: /home/ric/projects/huestacean/src/huestacean.cpp:59:5: error: ‘qmlRegisterType’ was not declared in this scope qmlRegisterType(); ^~~~~~~ /home/ric/projects/huestacean/src/huestacean.cpp:59:5: note: suggested alternative: ‘qRegisterMetaType’ qmlRegisterType(); ^~~~~~~ qRegisterMetaType /home/ric/projects/huestacean/src/huestacean.cpp:59:39: error: expected primary-expression before ‘>’ token qmlRegisterType(); ^ /home/ric/projects/huestacean/src/huestacean.cpp:59:41: error: expected primary-expression before ‘)’ token qmlRegisterType(); ^ CMakeFiles/huestacean.dir/build.make:158: recipe for target 'CMakeFiles/huestacean.dir/src/huestacean.cpp.o' failed make[3]: [CMakeFiles/huestacean.dir/src/huestacean.cpp.o] Error 1 CMakeFiles/Makefile2:71: recipe for target 'CMakeFiles/huestacean.dir/all' failed make[2]: [CMakeFiles/huestacean.dir/all] Error 2 CMakeFiles/Makefile2:83: recipe for target 'CMakeFiles/huestacean.dir/rule' failed make[1]: [CMakeFiles/huestacean.dir/rule] Error 2 Makefile:164: recipe for target 'huestacean' failed make: [huestacean] Error 2

hirnschmalz commented 5 years ago

I built the app sucessfully on Ubuntu 18 LTS. What system are you using?

EvPayne commented 5 years ago

same issue. Building on Manjaro

In file included from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/common/lightupdate.h:3, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/deviceprovider.h:2, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/hue/hue.h:3, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/3BNBPQW4XB/../../../include/hue/bridge.h:3, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/3BNBPQW4XB/moc_bridge.cpp:9, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/mocs_compilation.cpp:2: /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/common/math.h: In function ‘constexpr Math::angle Math::operator""_deg(long long unsigned int)’: /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/common/math.h:66:15: error: expected primary-expression before ‘(’ token return angle(long double(a) PI / 180.0); ^ /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/common/math.h:66:16: error: expected primary-expression before ‘long’ return angle(long double(a) PI / 180.0); ^~~~ In file included from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/6FRZV6ZOHH/../../../include/frontend/frontend.h:4, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/6FRZV6ZOHH/moc_frontend.cpp:9, from /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/build/huestacean_tests_autogen/mocs_compilation.cpp:5: /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h: At global scope: /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h:72:8: error: ‘scoped_lock’ in namespace ‘std’ does not name a template type std::scoped_lock lock; ^~~ /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h:72:3: note: ‘std::scoped_lock’ is defined in header ‘’; did you forget to ‘#include ’? /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h:6:1: +#include

include

/home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h:72:3: std::scoped_lock lock; ^~~ /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h: In constructor ‘Backend::BackendWriter::BackendWriter(Backend)’: /home/kyle/.cache/pacaur/huestacean-git/src/huestacean/include/backend/backend.h:45:62: error: class ‘Backend::BackendWriter’ does not have any field named ‘lock’ explicit BackendWriter(Backend inBackend) : b(inBackend), lock(inBackend->scenesMutex) ^~~~ make[2]: [CMakeFiles/huestacean_tests.dir/build.make:67: CMakeFiles/huestacean_tests.dir/huestacean_tests_autogen/mocs_compilation.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:77: CMakeFiles/huestacean_tests.dir/all] Error 2 make: *** [Makefile:141: all] Error 2

BradyBrenot commented 5 years ago

Please see #121 and #125. Cheers.