maniac103 / ems-collector

Buderus EMS heating control data collection daemon
GNU General Public License v3.0
28 stars 10 forks source link

trying to compile the collector on debian bullseye #29

Closed kamawero closed 3 years ago

kamawero commented 3 years ago

Hi, trying to compile the collector on debian bullseye gives me the following error:

---snip--- home@home2:~/ems-collector/collector$ uname -ar Linux home2 5.10.0-2-rpi #1 Debian 5.10.9-1 (2021-01-20) armv6l GNU/Linux

home@home2:~/ems-collector/collector$ g++ --version g++ (Debian 10.2.1-6) 10.2.1 20210110

home@home2:/home/home/ems-collector/collector$ make g++ -Wall -c -O2 -std=c++0x -DHAVE_DAEMONIZE -DHAVE_MYSQL -I/usr/include/mysql -DHAVE_RAW_READWRITE_COMMAND -MM main.cpp IoHandler.cpp SerialHandler.cpp SendingSerialHandler.cpp TcpHandler.cpp CommandHandler.cpp ApiCommandParser.cpp CommandScheduler.cpp DataHandler.cpp EmsMessage.cpp ValueApi.cpp ValueCache.cpp Options.cpp PidFile.cpp Database.cpp > .depend g++ -Wall -c -O2 -std=c++0x -DHAVE_DAEMONIZE -DHAVE_MYSQL -I/usr/include/mysql -DHAVE_RAW_READWRITE_COMMAND ValueCache.cpp ValueCache.cpp: In member function ‘void ValueCache::outputValues(const std::vector<std::__cxx11::basic_string >&, std::ostream&)’: ValueCache.cpp:80:24: error: no match for ‘operator<<’ (operand types are ‘std::basic_ostream’ and ‘const char [2]’) 80 stream << subtype << " "; ~~~~~ ^~ ~~~
const char [2]
std::basic_ostream
In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/boost/function/function_base.hpp:14, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/basic_string.h:6468:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)’ 6468 operator<<(basic_ostream<_CharT, _Traits>& __os, ^~~~ /usr/include/c++/10/bits/basic_string.h:6468:5: note: template argument deduction/substitution failed: ValueCache.cpp:80:27: note: mismatched types ‘const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>’ and ‘const char [2]’ 80 stream << subtype << " "; ^~~ In file included from /usr/include/c++/10/memory:84, from /usr/include/boost/function/function_base.hpp:16, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/shared_ptr.h:69:5: note: candidate: ‘template<class _Ch, class _Tr, class _Tp, gnu_cxx::_Lock_policy _Lp> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::shared_ptr<_Tp, _Lp>&)’ 69 operator<<(std::basic_ostream<_Ch, _Tr>& __os, ^~~~ /usr/include/c++/10/bits/shared_ptr.h:69:5: note: template argument deduction/substitution failed: ValueCache.cpp:80:27: note: mismatched types ‘const std::__shared_ptr<_Tp, _Lp>’ and ‘const char [2]’ 80 stream << subtype << " "; ^~~ ValueCache.cpp:82:17: error: no match for ‘operator<<’ (operand types are ‘std::basic_ostream’ and ‘const char [4]’) 82 stream << type << " = " << ValueApi::formatValue(entry.second.value); ~~~~ ^~ ~~~
const char [4]
std::basic_ostream
In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/boost/function/function_base.hpp:14, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/basic_string.h:6468:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)’ 6468 operator<<(basic_ostream<_CharT, _Traits>& __os, ^~~~ /usr/include/c++/10/bits/basic_string.h:6468:5: note: template argument deduction/substitution failed: ValueCache.cpp:82:20: note: mismatched types ‘const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>’ and ‘const char [4]’ 82 stream << type << " = " << ValueApi::formatValue(entry.second.value); ^~~~~ In file included from /usr/include/c++/10/memory:84, from /usr/include/boost/function/function_base.hpp:16, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/shared_ptr.h:69:5: note: candidate: ‘template<class _Ch, class _Tr, class _Tp, gnu_cxx::_Lock_policy _Lp> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::shared_ptr<_Tp, _Lp>&)’ 69 operator<<(std::basic_ostream<_Ch, _Tr>& __os, ^~~~ /usr/include/c++/10/bits/shared_ptr.h:69:5: note: template argument deduction/substitution failed: ValueCache.cpp:82:20: note: mismatched types ‘const std::__shared_ptr<_Tp, _Lp>’ and ‘const char [4]’ 82 stream << type << " = " << ValueApi::formatValue(entry.second.value); ^~~~~ ValueCache.cpp:83:9: error: no match for ‘operator<<’ (operand types are ‘std::ostream’ {aka ‘std::basic_ostream’} and ‘const char [4]’) 83 stream << " " << entry.second.timestamp << '\n'; ~~ ^~ ~
const char [4]
std::ostream {aka std::basic_ostream}

In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/boost/function/function_base.hpp:14, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/basic_string.h:6468:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::cxx11::basic_string<_CharT, _Traits, _Alloc>&)’ 6468 | operator<<(basic_ostream<_CharT, _Traits>& __os, | ^~~~ /usr/include/c++/10/bits/basic_string.h:6468:5: note: template argument deduction/substitution failed: ValueCache.cpp:83:12: note: mismatched types ‘const std::cxx11::basic_string<_CharT, _Traits, _Alloc>’ and ‘const char [4]’ 83 | stream << " | " << entry.second.timestamp << '\n'; | ^~~~~ In file included from /usr/include/c++/10/memory:84, from /usr/include/boost/function/function_base.hpp:16, from /usr/include/boost/function/detail/prologue.hpp:17, from /usr/include/boost/function.hpp:30, from EmsMessage.h:24, from ValueApi.h:23, from ValueCache.cpp:20: /usr/include/c++/10/bits/shared_ptr.h:69:5: note: candidate: ‘template<class _Ch, class _Tr, class _Tp, gnu_cxx::_Lock_policy _Lp> std::basic_ostream<E, T>& std::operator<<(std::basic_ostream<E, T>&, const std::shared_ptr<_Tp, _Lp>&)’ 69 | operator<<(std::basic_ostream<_Ch, _Tr>& __os, | ^~~~ /usr/include/c++/10/bits/shared_ptr.h:69:5: note: template argument deduction/substitution failed: ValueCache.cpp:83:12: note: mismatched types ‘const std::__shared_ptr<_Tp, _Lp>’ and ‘const char [4]’ 83 | stream << " | " << entry.second.timestamp << '\n'; | ^~~~~ make: *** [Makefile:49: ValueCache.o] Fehler 1 home@home2:~/ems-collector/collector$ ---snap---

As one can see, compiling till "ValueApi.cpp" works fine. Anybody any idea, what to do?

Thanks in advance, Karl M.