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
^~~
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
^~~
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
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
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
~~~~~ ^~ ~~~~~~ /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~~~ /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~~~~ ^~ ~~~~~~ /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~~~ /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~~ ^~~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.