ahmad138 / satrot Goto Github PK
View Code? Open in Web Editor NEWA modular Satellite/Celestrial body rotator and tracker to communicate with satellites or simply increasing the efficiency of solar panels
License: MIT License
A modular Satellite/Celestrial body rotator and tracker to communicate with satellites or simply increasing the efficiency of solar panels
License: MIT License
The client crashes the main window when connect. I might use another method and refactor my code to implement it another way
do we need to create JSON file in term that the API will be running probably right??
This is to prevent the steppers overshooting the maximum and minimum required angles
0-360 for Az and 0-180 for El
add list of components, their links, costs, and images
The error it spits out during compilation in qmake
libQt5Gui.so /opt/Qt5.14.1/5.14.1/gcc_64/lib/libQt5Core.so -lGL -lpthread
/usr/bin/ld: api.o: in function
api::sample()':
/home/ahmad/Documents/UofG/Semester 2/Real Time Embedded Programming/satRot/Software/build-SatRot-GUI-Desktop_Qt_5_14_1_GCC_64bit-Debug/GUI-Main/../../SatRot-GUI/GUI-Main/src/api.cpp:36: undefined reference to boost::log::v2_mt_posix::core::get()' /usr/bin/ld: /home/ahmad/Documents/UofG/Semester 2/Real Time Embedded Programming/satRot/Software/build-SatRot-GUI-Desktop_Qt_5_14_1_GCC_64bit-Debug/GUI-Main/../../SatRot-GUI/GUI-Main/src/api.cpp:37: undefined reference to
boost::log::v2_mt_posix::core::set_filter(boost::log::v2_mt_posix::filter const&)'
/usr/bin/ld: /home/ahmad/Documents/UofG/Semester 2/Real Time Embedded Programming/satRot/Software/build-SatRot-GUI-Desktop_Qt_5_14_1_GCC_64bit-Debug/GUI-Main/../../SatRot-GUI/GUI-Main/src/api.cpp:42: undefined reference to restc_cpp::RestClient::Create()' /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::attribute_name::attribute_name(char const*)':
/usr/include/boost/log/attributes/attribute_name.hpp:80: undefined reference to boost::log::v2_mt_posix::attribute_name::get_id_from_string(char const*)' /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::record::reset()':
/usr/include/boost/log/core/record.hpp:157: undefined reference to boost::log::v2_mt_posix::record_view::public_data::destroy(boost::log::v2_mt_posix::record_view::public_data const*)' /usr/bin/ld: api.o: in function
boost::system::error_code::error_code()':
/usr/include/boost/system/error_code.hpp:461: undefined reference to boost::system::system_category()' /usr/bin/ld: api.o: in function
boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const':
/usr/include/boost/system/error_code.hpp:703: undefined reference to boost::system::generic_category()' /usr/bin/ld: /usr/include/boost/system/error_code.hpp:706: undefined reference to
boost::system::generic_category()'
/usr/bin/ld: api.o: in function boost::system::error_category::std_category::equivalent(std::error_code const&, int) const': /usr/include/boost/system/error_code.hpp:733: undefined reference to
boost::system::generic_category()'
/usr/bin/ld: /usr/include/boost/system/error_code.hpp:736: undefined reference to boost::system::generic_category()' /usr/bin/ld: /usr/include/boost/system/error_code.hpp:748: undefined reference to
boost::system::generic_category()'
/usr/bin/ld: api.o: in function boost::asio::error::get_system_category()': /usr/include/boost/asio/error.hpp:230: undefined reference to
boost::system::system_category()'
/usr/bin/ld: api.o: in function boost::coroutines::attributes::attributes()': /usr/include/boost/coroutine/attributes.hpp:30: undefined reference to
boost::coroutines::stack_traits::default_size()'
/usr/bin/ld: api.o: in function boost::coroutines::detail::push_coroutine_impl<void>::unwind_stack()': /usr/include/boost/coroutine/detail/push_coroutine_impl.hpp:247: undefined reference to
boost::coroutines::detail::coroutine_context::jump(boost::coroutines::detail::coroutine_context&, void*)'
/usr/bin/ld: api.o: in function boost::coroutines::detail::push_coroutine_impl<void>::push()': /usr/include/boost/coroutine/detail/push_coroutine_impl.hpp:265: undefined reference to
boost::coroutines::detail::coroutine_context::jump(boost::coroutines::detail::coroutine_context&, void*)'
/usr/bin/ld: api.o: in function boost::asio::ssl::detail::openssl_init_base::do_init::~do_init()': /usr/include/boost/asio/ssl/detail/impl/openssl_init.ipp:90: undefined reference to
CONF_modules_unload'
/usr/bin/ld: api.o: in function boost::asio::error::detail::ssl_category::message[abi:cxx11](int) const': /usr/include/boost/asio/ssl/impl/error.ipp:39: undefined reference to
ERR_reason_error_string'
/usr/bin/ld: api.o: in function restc_cpp::RequestBuilder::Build()': /usr/local/include/restc-cpp/RequestBuilder.h:371: undefined reference to
restc_cpp::Request::Create(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, restc_cpp::Request::Type, restc_cpp::RestClient&, std::unique_ptr<restc_cpp::RequestBody, std::default_delete<restc_cpp::RequestBody> >, boost::optional<std::deque<restc_cpp::Request::Arg, std::allocator<restc_cpp::Request::Arg> > > const&, boost::optional<restc_cpp::Headers> const&, boost::optional<restc_cpp::Request::Auth> const&)'
/usr/bin/ld: api.o: in function restc_cpp::RestClient::ProcessWithPromiseT<Post>(std::function<Post (restc_cpp::Context&)> const&)::{lambda(boost::asio::basic_yield_context<boost::asio::executor_binder<void (*)(), boost::asio::executor> >)#1}::operator()(boost::asio::basic_yield_context<boost::asio::executor_binder<void (*)(), boost::asio::executor> >) const': /usr/local/include/restc-cpp/restc-cpp.h:371: undefined reference to
restc_cpp::Context::Create(boost::asio::basic_yield_context<boost::asio::executor_binder<void ()(), boost::asio::executor> >&, restc_cpp::RestClient&)'
/usr/bin/ld: api.o: in function restc_cpp::RapidJsonDeserializer<Post>::DoStartObject()': /usr/local/include/restc-cpp/SerializeJson.h:1014: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:1014: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: api.o: in function
void restc_cpp::RapidJsonDeserializer::RecurseToMember(std::enable_if<boost::fusion::traits::is_sequence::value, void>::type)':
/usr/local/include/restc-cpp/SerializeJson.h:780: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:780: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: api.o: in function boost::log::v2_mt_posix::record boost::log::v2_mt_posix::sources::basic_composite_logger<char, boost::log::v2_mt_posix::sources::severity_logger_mt<boost::log::v2_mt_posix::trivial::severity_level>, boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>, boost::log::v2_mt_posix::sources::features<boost::log::v2_mt_posix::sources::severity<boost::log::v2_mt_posix::trivial::severity_level> > >::open_record<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity, boost::log::v2_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity, boost::log::v2_mt_posix::trivial::severity_level const> const&)': /usr/include/boost/log/sources/basic_logger.hpp:456: undefined reference to
boost::log::v2_mt_posix::core::get_logging_enabled() const'
/usr/bin/ld: api.o: in function boost::log::v2_mt_posix::aux::record_pump<boost::log::v2_mt_posix::sources::severity_logger_mt<boost::log::v2_mt_posix::trivial::severity_level> >::~record_pump()': /usr/include/boost/log/sources/record_ostream.hpp:526: undefined reference to
boost::log::v2_mt_posix::aux::unhandled_exception_count()'
/usr/bin/ld: api.o: in function bool restc_cpp::RapidJsonDeserializer<Post>::SetValue<bool>(bool)': /usr/local/include/restc-cpp/SerializeJson.h:941: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:941: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: api.o: in function
bool restc_cpp::RapidJsonDeserializer::SetValue<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(std::__cxx11::basic_string<char, std::char_traits, std::allocator >)':
/usr/local/include/restc-cpp/SerializeJson.h:941: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:941: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: api.o: in function bool restc_cpp::RapidJsonDeserializer<Post>::SetValue<double>(double)': /usr/local/include/restc-cpp/SerializeJson.h:941: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: api.o:/usr/local/include/restc-cpp/SerializeJson.h:941: more undefined references to boost::log::v2_mt_posix::trivial::logger::get()' follow /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::aux::record_pump<boost::log::v2_mt_posix::sources::severity_logger_mtboost::log::v2_mt_posix::trivial::severity_level >::record_pump(boost::log::v2_mt_posix::sources::severity_logger_mtboost::log::v2_mt_posix::trivial::severity_level&, boost::log::v2_mt_posix::record&)':
/usr/include/boost/log/sources/record_ostream.hpp:506: undefined reference to boost::log::v2_mt_posix::aux::stream_provider<char>::allocate_compound(boost::log::v2_mt_posix::record&)' /usr/bin/ld: /usr/include/boost/log/sources/record_ostream.hpp:507: undefined reference to
boost::log::v2_mt_posix::aux::unhandled_exception_count()'
/usr/bin/ld: api.o: in function boost::log::v2_mt_posix::aux::record_pump<boost::log::v2_mt_posix::sources::severity_logger_mt<boost::log::v2_mt_posix::trivial::severity_level> >::auto_release::~auto_release()': /usr/include/boost/log/sources/record_ostream.hpp:491: undefined reference to
boost::log::v2_mt_posix::aux::stream_provider::release_compound(boost::log::v2_mt_posix::aux::stream_provider::stream_compound*)'
/usr/bin/ld: api.o: in function bool restc_cpp::RapidJsonDeserializer<Post>::SetValueOnMember<Post, bool>(bool const&, std::enable_if<boost::fusion::traits::is_sequence<Post>::value, void>::type*)': /usr/local/include/restc-cpp/SerializeJson.h:843: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:843: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: api.o: in function
bool restc_cpp::RapidJsonDeserializer::SetValueOnMember<Post, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::enable_if<boost::fusion::traits::is_sequence::value, void>::type*)':
/usr/local/include/restc-cpp/SerializeJson.h:843: undefined reference to boost::log::v2_mt_posix::trivial::logger::get()' /usr/bin/ld: /usr/local/include/restc-cpp/SerializeJson.h:843: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: api.o: in function bool restc_cpp::RapidJsonDeserializer<Post>::SetValueOnMember<Post, double>(double const&, std::enable_if<boost::fusion::traits::is_sequence<Post>::value, void>::type*)': /usr/local/include/restc-cpp/SerializeJson.h:843: undefined reference to
boost::log::v2_mt_posix::trivial::logger::get()'
/usr/bin/ld: api.o:/usr/local/include/restc-cpp/SerializeJson.h:843: more undefined references to boost::log::v2_mt_posix::trivial::logger::get()' follow /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::sources::aux::severity_levelboost::log::v2_mt_posix::trivial::severity_level::set_value(boost::log::v2_mt_posix::trivial::severity_level)':
/usr/include/boost/log/sources/severity_feature.hpp:135: undefined reference to boost::log::v2_mt_posix::sources::aux::get_severity_level()' /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::record boost::log::v2_mt_posix::sources::basic_logger<char, boost::log::v2_mt_posix::sources::severity_logger_mtboost::log::v2_mt_posix::trivial::severity_level, boost::log::v2_mt_posix::sources::multi_thread_modelboost::log::v2_mt_posix::aux::light_rw_mutex >::open_record_unlocked<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity, boost::log::v2_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity, boost::log::v2_mt_posix::trivial::severity_level const> const&)':
/usr/include/boost/log/sources/basic_logger.hpp:259: undefined reference to boost::log::v2_mt_posix::core::open_record(boost::log::v2_mt_posix::attribute_set const&)' /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::core::push_record(boost::log::v2_mt_posix::record&&)':
/usr/include/boost/log/core/core.hpp:308: undefined reference to boost::log::v2_mt_posix::core::push_record_move(boost::log::v2_mt_posix::record&)' /usr/bin/ld: api.o: in function
boost::log::v2_mt_posix::value_extractor<boost::log::v2_mt_posix::trivial::severity_level, boost::log::v2_mt_posix::fallback_to_none, boost::log::v2_mt_posix::trivial::tag::severity>::operator()(boost::log::v2_mt_posix::attribute_name const&, boost::log::v2_mt_posix::attribute_value_set const&) const':
/usr/include/boost/log/attributes/value_extraction.hpp:232: undefined reference to boost::log::v2_mt_posix::attribute_value_set::find(boost::log::v2_mt_posix::attribute_name) const' /usr/bin/ld: /usr/include/boost/log/attributes/value_extraction.hpp:233: undefined reference to
boost::log::v2_mt_posix::attribute_value_set::end() const'
/usr/bin/ld: /usr/include/boost/log/attributes/value_extraction.hpp:241: undefined reference to boost::log::v2_mt_posix::aux::attach_attribute_name_info(boost::exception&, boost::log::v2_mt_posix::attribute_name const&)' /usr/bin/ld: api.o: in function
boost::coroutines::basic_standard_stack_allocatorboost::coroutines::stack_traits::allocate(boost::coroutines::stack_context&, unsigned long)':
/usr/include/boost/coroutine/standard_stack_allocator.hpp:39: undefined reference to boost::coroutines::stack_traits::minimum_size()' /usr/bin/ld: /usr/include/boost/coroutine/standard_stack_allocator.hpp:40: undefined reference to
boost::coroutines::stack_traits::is_unbounded()'
/usr/bin/ld: /usr/include/boost/coroutine/standard_stack_allocator.hpp:40: undefined reference to boost::coroutines::stack_traits::maximum_size()' /usr/bin/ld: api.o: in function
boost::coroutines::detail::push_coroutine_context_void::push_coroutine_context_void<boost::coroutines::detail::push_coroutine_object<boost::coroutines::pull_coroutine, void, boost::asio::detail::coro_entry_point<boost::asio::executor_binder<void ()(), boost::asio::strandboost::asio::io_context::executor_type >, restc_cpp::RestClient::ProcessWithPromiseT(std::function<Post (restc_cpp::Context&)> const&)::{lambda(boost::asio::basic_yield_context<boost::asio::executor_binder<void ()(), boost::asio::executor> >)#1}>&, boost::coroutines::basic_standard_stack_allocatorboost::coroutines::stack_traits > >(boost::coroutines::detail::preallocated const&, boost::coroutines::detail::push_coroutine_object<boost::coroutines::pull_coroutine, void, boost::asio::detail::coro_entry_point<boost::asio::executor_binder<void ()(), boost::asio::strandboost::asio::io_context::executor_type >, restc_cpp::RestClient::ProcessWithPromiseT(std::function<Post (restc_cpp::Context&)> const&)::{lambda(boost::asio::basic_yield_context<boost::asio::executor_binder<void ()(), boost::asio::executor> >)#1}>&, boost::coroutines::basic_standard_stack_allocatorboost::coroutines::stack_traits >)':
/usr/include/boost/coroutine/detail/push_coroutine_object.hpp:59: undefined reference to boost::coroutines::detail::coroutine_context::coroutine_context()' /usr/bin/ld: /usr/include/boost/coroutine/detail/push_coroutine_object.hpp:59: undefined reference to
boost::coroutines::detail::coroutine_context::coroutine_context(void ()(boost::context::detail::transfer_t), boost::coroutines::detail::preallocated const&)'
/usr/bin/ld: api.o: in function boost::coroutines::detail::push_coroutine_object<boost::coroutines::pull_coroutine<void>, void, boost::asio::detail::coro_entry_point<boost::asio::executor_binder<void (*)(), boost::asio::strand<boost::asio::io_context::executor_type> >, restc_cpp::RestClient::ProcessWithPromiseT<Post>(std::function<Post (restc_cpp::Context&)> const&)::{lambda(boost::asio::basic_yield_context<boost::asio::executor_binder<void (*)(), boost::asio::executor> >)#1}>&, boost::coroutines::basic_standard_stack_allocator<boost::coroutines::stack_traits> >::run()': /usr/include/boost/coroutine/detail/push_coroutine_object.hpp:302: undefined reference to
boost::coroutines::detail::coroutine_context::jump(boost::coroutines::detail::coroutine_context&, void*)'
/usr/bin/ld: api.o: in function boost::coroutines::basic_standard_stack_allocator<boost::coroutines::stack_traits>::deallocate(boost::coroutines::stack_context&)': /usr/include/boost/coroutine/standard_stack_allocator.hpp:55: undefined reference to
boost::coroutines::stack_traits::minimum_size()'
/usr/bin/ld: /usr/include/boost/coroutine/standard_stack_allocator.hpp:56: undefined reference to boost::coroutines::stack_traits::is_unbounded()' /usr/bin/ld: /usr/include/boost/coroutine/standard_stack_allocator.hpp:56: undefined reference to
boost::coroutines::stack_traits::maximum_size()'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:286: GUI-Main] Error 1
make: *** [Makefile:48: sub-GUI-Main-make_first] Error 2
make[1]: Leaving directory '/home/ahmad/Documents/UofG/Semester 2/Real Time Embedded Programming/satRot/Software/build-SatRot-GUI-Desktop_Qt_5_14_1_GCC_64bit-Debug/GUI-Main'
20:27:17: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project SatRot-GUI (kit: Desktop Qt 5.14.1 GCC 64bit)
When executing step "Make"
20:27:17: Elapsed time: 00:09.`
Describe the bug
after cloning, i tried compiling using qmake but it kept failing.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:654:5: note: because ‘QStyleOptionSizeGrip’ has user-provided ‘QStyleOptionSizeGrip::QStyleOptionSizeGrip(const QStyleOptionSizeGrip&)’
654 | QStyleOptionSizeGrip(const QStyleOptionSizeGrip &other) : QStyleOptionComplex(Version, Type) { *this = other; }
| ^~~~~~~~~~~~~~~~~~~~
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h: In member function ‘QStyleOptionSizeGrip& QStyleOptionSizeGrip::operator=(const QStyleOptionSizeGrip&)’:
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:645:24: warning: implicitly-declared ‘QStyleOptionComplex& QStyleOptionComplex::operator=(const QStyleOptionComplex&)’ is deprecated [-Wdeprecated-copy]
645 | class Q_WIDGETS_EXPORT QStyleOptionSizeGrip : public QStyleOptionComplex
| ^~~~~~~~~~~~~~~~~~~~
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:510:5: note: because ‘QStyleOptionComplex’ has user-provided ‘QStyleOptionComplex::QStyleOptionComplex(const QStyleOptionComplex&)’
510 | QStyleOptionComplex(const QStyleOptionComplex &other) : QStyleOption(Version, Type) { *this = other; }
| ^~~~~~~~~~~~~~~~~~~
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h: In copy constructor ‘QStyleOptionSizeGrip::QStyleOptionSizeGrip(const QStyleOptionSizeGrip&)’:
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:654:108: note: synthesized method ‘QStyleOptionSizeGrip& QStyleOptionSizeGrip::operator=(const QStyleOptionSizeGrip&)’ first required here
654 | eOptionSizeGrip &other) : QStyleOptionComplex(Version, Type) { *this = other; }
| ^~~~~
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h: In copy constructor ‘QStyleOptionGraphicsItem::QStyleOptionGraphicsItem(const QStyleOptionGraphicsItem&)’:
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:670:109: warning: implicitly-declared ‘QStyleOptionGraphicsItem& QStyleOptionGraphicsItem::operator=(const QStyleOptionGraphicsItem&)’ is deprecated [-Wdeprecated-copy]
670 | tyleOptionGraphicsItem &other) : QStyleOption(Version, Type) { *this = other; }
| ^~~~~
/home/ahmad/anaconda3/include/qt/QtWidgets/qstyleoption.h:670:5: note: because ‘QStyleOptionGraphicsItem’ has user-provided ‘QStyleOptionGraphicsItem::QStyleOptionGraphicsItem(const QStyleOptionGraphicsItem&)’
670 | QStyleOptionGraphicsItem(const QStyleOptionGraphicsItem &other) : QStyleOption(Version, Type) { *this = other; }
| ^~~~~~~~~~~~~~~~~~~~~~~~
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:157:39: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [5]’)
157 | QString r = o.value("company")["name"].toString();
| ^
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:164:39: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [5]’)
164 | QString r = o.value("company")["name"].toString();
| ^
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:413:52: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [6]’)
413 | QString a = QString::number(o.value("info")["satid"].toInt());
| ^
../src/mainwindow.cpp:414:36: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [8]’)
414 | QString b = o.value("info")["satname"].toString();
| ^
../src/mainwindow.cpp:416:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
416 | QString c = QString::number(o.value("positions")[0]["satlatitude"].toDouble());
| ^
../src/mainwindow.cpp:417:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
417 | QString d = QString::number(o.value("positions")[0]["satlongitude"].toDouble());
| ^
../src/mainwindow.cpp:418:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
418 | QString e = QString::number(o.value("positions")[0]["sataltitude"].toDouble());
| ^
../src/mainwindow.cpp:419:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
419 | QString f = QString::number(o.value("positions")[0]["azimuth"].toDouble());
| ^
../src/mainwindow.cpp:420:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
420 | QString g = QString::number(o.value("positions")[0]["elevation"].toDouble());
| ^
../src/mainwindow.cpp:421:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
421 | QString h = QString::number(o.value("positions")[0]["ra"].toDouble());
| ^
../src/mainwindow.cpp:422:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
422 | QString i = QString::number(o.value("positions")[0]["dec"].toDouble());
| ^
../src/mainwindow.cpp:423:57: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
423 | QString j = QString::number(o.value("positions")[0]["timestamp"].toInt());
| ^
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:478:56: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [6]’)
478 | QString a = QString::number(o.value("info")["satid"].toInt());
| ^
../src/mainwindow.cpp:479:40: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [8]’)
479 | QString b = o.value("info")["satname"].toString();
| ^
../src/mainwindow.cpp:480:56: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [12]’)
480 | QString c = QString::number(o.value("info")["passescount"].toInt());
| ^
../src/mainwindow.cpp:485:55: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
485 | myDateTime.setTime_t(o.value("passes")[x]["startUTC"].toInt());
| ^
../src/mainwindow.cpp:487:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
487 | QString e = QString::number(o.value("passes")[x]["startAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:488:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
488 | QString f = QString::number(o.value("passes")[x]["startEl"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:489:55: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
489 | myDateTime.setTime_t(o.value("passes")[x]["maxUTC"].toInt());
| ^
../src/mainwindow.cpp:491:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
491 | QString h = QString::number(o.value("passes")[x]["maxAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:492:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
492 | QString i = QString::number(o.value("passes")[x]["maxEl"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:493:55: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
493 | myDateTime.setTime_t(o.value("passes")[x]["endUTC"].toInt());
| ^
../src/mainwindow.cpp:495:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
495 | QString k = QString::number(o.value("passes")[x]["endAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:496:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
496 | QString l = QString::number(o.value("passes")[x]["endEl"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:497:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
497 | QString m = o.value("passes")[x]["startAzCompass"].toString();
| ^
../src/mainwindow.cpp:498:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
498 | QString n = o.value("passes")[x]["maxAzCompass"].toString();
| ^
../src/mainwindow.cpp:499:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
499 | QString p = o.value("passes")[x]["endAzCompass"].toString();
| ^
../src/mainwindow.cpp:501:38: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
501 | if (o.value("passes")[x]["mag"].toDouble() == 100000)
| ^
../src/mainwindow.cpp:507:60: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
507 | mag = QString::number(o.value("passes")[x]["mag"].toDouble());
| ^
../src/mainwindow.cpp:510:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
510 | QString r = QString::number(o.value("passes")[x]["duration"].toInt());
| ^
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:577:56: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [6]’)
577 | QString a = QString::number(o.value("info")["satid"].toInt());
| ^
../src/mainwindow.cpp:578:40: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [8]’)
578 | QString b = o.value("info")["satname"].toString();
| ^
../src/mainwindow.cpp:579:56: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [12]’)
579 | QString c = QString::number(o.value("info")["passescount"].toInt());
| ^
../src/mainwindow.cpp:584:55: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
584 | myDateTime.setTime_t(o.value("passes")[x]["startUTC"].toInt());
| ^
../src/mainwindow.cpp:586:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
586 | QString e = QString::number(o.value("passes")[x]["startAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:587:52: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
587 | myDateTime.setTime_t(o.value("pes")[x]["maxUTC"].toInt());
| ^
../src/mainwindow.cpp:589:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
589 | QString g = QString::number(o.value("passes")[x]["maxAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:590:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
590 | QString h = QString::number(o.value("passes")[x]["maxEl"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:591:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
591 | QString i = QString::number(o.value("passes")[x]["endAz"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:592:55: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
592 | myDateTime.setTime_t(o.value("passes")[x]["endUTC"].toInt());
| ^
../src/mainwindow.cpp:594:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
594 | QString k = o.value("passes")[x]["startAzCompass"].toString();
| ^
../src/mainwindow.cpp:595:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
595 | QString l = o.value("passes")[x]["maxAzCompass"].toString();
| ^
../src/mainwindow.cpp:596:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
596 | QString m = o.value("passes")[x]["endAzCompass"].toString();
| ^
../src/mainwindow.cpp: In lambda function:
../src/mainwindow.cpp:650:52: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [6]’)
650 | QString a = QString::number(o.value("info")["satid"].toInt());
| ^
../src/mainwindow.cpp:651:36: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [8]’)
651 | QString b = o.value("info")["satname"].toString();
| ^
../src/mainwindow.cpp: In member function ‘void MainWindow::tableTimer()’:
../src/mainwindow.cpp:919:39: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
919 | if (var.value("positions")[i]["timestamp"].toInt() == UTC.toSecsSinceEpoch())
| ^
../src/mainwindow.cpp:922:62: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [6]’)
922 | QString a = QString::number(var.value("info")["satid"].toInt());
| ^
../src/mainwindow.cpp:923:46: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘const char [8]’)
923 | QString b = var.value("info")["satname"].toString();
| ^
../src/mainwindow.cpp:925:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
925 | QString c = QString::number(var.value("positions")[i]["satlatitude"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:926:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
926 | QString d = QString::number(var.value("positions")[i]["satlongitude"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:927:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
927 | QString e = QString::number(var.value("positions")[i]["sataltitude"].toDouble()) + " Km";
| ^
../src/mainwindow.cpp:928:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
928 | QString f = QString::number(var.value("positions")[i]["azimuth"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:929:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
929 | QString g = QString::number(var.value("positions")[i]["elevation"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:930:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
930 | QString h = QString::number(var.value("positions")[i]["ra"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:931:67: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
931 | QString j = QString::number(var.value("positions")[i]["dec"].toDouble()) + "°";
| ^
../src/mainwindow.cpp:933:60: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
933 | myDateTime.setTime_t(var.value("positions")[i]["timestamp"].toInt());
| ^
../src/mainwindow.cpp:966:70: error: no match for ‘operator[]’ (operand types are ‘QJsonValue’ and ‘int’)
966 | if (UTC.toSecsSinceEpoch() > (positions[0].value("positions")[lm - 1]["timestamp"].toInt() + 0))
| ^
Desktop (please complete the following information):
Additional context
quick solution will be appreciated
Could you write a little bit about the API in documentation?
Which IP-Ports are in use?
Something about the json requests and responses?
Is it possible to install it on raspberry buster?
greetings, Peter
The initial pcb design was not to the specification of the manufacturing unit in the university of Glasgow. We have to redesign and modify the design for manufacturability.
There are alot of places with memory leaks. This causes the application to slightly slow down the system and increases the latency of the system.
It gets hooked up and becomes non responsive the first launch, but after closing and relaunching, the works
Will split the GUI and stepper driver into 2 separate codes to reduce load on the RAM on the pi
The initial list was really costly and some parts are really hard to get for the electronics and telecommunication parts
While trying to switch the roles of the server and clients, and adding a 2 way communications, the tcpsocket broke down. Try and overhaul the whole unit.
During the testing of stepper class, the stepper needs to move to angle 180 CW at a slow speed and move back CCW to angle 90 at a faster rate. Unfortunately, due to logical error, the motor rotates continously.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.