Closed Zealota74 closed 8 years ago
Which gcc (compiler) version is used here?
Ok. Seems to be a weird gcc 5 issue. Please recheck the master branch. Should be resolved noew.
Gcc version: "gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010" Now compilation is clear. Many thanks!
Great. You're welcome.
There is some kind of trouble in compilation of robotv in vdr. VDR 2.2.0, lates git of robotv, Ubuntu 15.10, 4.2.0-18-generic
*** Plugin robotv: CXX src/robotv/robotvclient.cpp In file included from /usr/include/c++/5/deque:64:0, from /usr/include/c++/5/queue:60, from src/robotv/robotvclient.h:30, from src/robotv/robotvclient.cpp:50: /usr/include/c++/5/bits/stl_deque.h: In instantiation of 'void std::_Deque_base<_Tp, _Alloc>::_Deque_impl::_M_swap_data(std::_Deque_base<_Tp, _Alloc>::_Deque_impl&) [with _Tp = MsgPacket*; _Alloc = std::allocator<MsgPacket*>]': /usr/include/c++/5/bits/stl_deque.h:514:4: required from 'std::_Deque_base<_Tp, _Alloc>::_Deque_base(std::_Deque_base<_Tp, _Alloc>&&, std::true_type) [with _Tp = MsgPacket*; _Alloc = std::allocator<MsgPacket*>; std::true_type = std::integral_constant<bool, true>]' /usr/include/c++/5/bits/stl_deque.h:519:61: required from 'std::_Deque_base<_Tp, _Alloc>::_Deque_base(std::_Deque_base<_Tp, _Alloc>&&) [with _Tp = MsgPacket*; _Alloc = std::allocator<MsgPacket*>]' /usr/include/c++/5/bits/stl_deque.h:957:29: required from 'std::deque<_Tp, _Alloc>::deque(std::deque<_Tp, _Alloc>&&) [with _Tp = MsgPacket*; _Alloc = std::allocator<MsgPacket*>]' /usr/include/c++/5/bits/stl_queue.h:146:25: required from 'std::queue<_Tp, _Sequence>::queue(_Sequence&&) [with _Tp = MsgPacket*; _Sequence = std::deque<MsgPacket*, std::allocator<MsgPacket*> >]' src/robotv/robotvclient.cpp:56:27: required from here /usr/include/c++/5/bits/stl_deque.h:578:8: error: call of overloaded 'swap(std::_Deque_base<MsgPacket*, std::allocator<MsgPacket*> >::iterator&, std::_Deque_base<MsgPacket*, std::allocator<MsgPacket*> >::iterator&)' is ambiguous swap(this->_M_start, __x._M_start); ^ In file included from /usr/include/c++/5/bits/stl_pair.h:59:0, from /usr/include/c++/5/bits/stl_algobase.h:64, from /usr/include/c++/5/bits/stl_tree.h:63, from /usr/include/c++/5/map:60, from src/robotv/robotvclient.cpp:30: /usr/include/c++/5/bits/move.h:176:5: note: candidate: void std::swap(_Tp&, _Tp&) [with _Tp = std::_Deque_iterator<MsgPacket*, MsgPacket*&, MsgPacket**>] swap(_Tp& __a, _Tp& __b) ^ In file included from vdr-2.2.0/include/vdr/i18n.h:14:0, from vdr-2.2.0/include/vdr/config.h:19, from vdr-2.2.0/include/vdr/channels.h:13, from vdr-2.2.0/include/vdr/recording.h:14, from src/robotv/robotvclient.cpp:33: vdr-2.2.0/include/vdr/tools.h:57:31: note: candidate: void swap(T&, T&) [with T = std::_Deque_iterator<MsgPacket*, MsgPacket*&, MsgPacket**>] template<class T> inline void swap(T &a, T &b) { T t = a; a = b; b = t; } ^ In file included from /usr/include/c++/5/deque:64:0, from /usr/include/c++/5/queue:60, from src/robotv/robotvclient.h:30, from src/robotv/robotvclient.cpp:50: /usr/include/c++/5/bits/stl_deque.h:579:8: error: call of overloaded 'swap(std::_Deque_base<MsgPacket*, std::allocator<MsgPacket*> >::iterator&, std::_Deque_base<MsgPacket*, std::allocator<MsgPacket*> >::iterator&)' is ambiguous swap(this->_M_finish, __x._M_finish); ^ In file included from /usr/include/c++/5/bits/stl_pair.h:59:0, from /usr/include/c++/5/bits/stl_algobase.h:64, from /usr/include/c++/5/bits/stl_tree.h:63, from /usr/include/c++/5/map:60, from src/robotv/robotvclient.cpp:30: /usr/include/c++/5/bits/move.h:176:5: note: candidate: void std::swap(_Tp&, _Tp&) [with _Tp = std::_Deque_iterator<MsgPacket*, MsgPacket*&, MsgPacket**>] swap(_Tp& __a, _Tp& __b) ^ In file included from vdr-2.2.0/include/vdr/i18n.h:14:0, from vdr-2.2.0/include/vdr/config.h:19, from vdr-2.2.0/include/vdr/channels.h:13, from vdr-2.2.0/include/vdr/recording.h:14, from src/robotv/robotvclient.cpp:33: vdr-2.2.0/include/vdr/tools.h:57:31: note: candidate: void swap(T&, T&) [with T = std::_Deque_iterator<MsgPacket*, MsgPacket*&, MsgPacket**>] template<class T> inline void swap(T &a, T &b) { T t = a; a = b; b = t; } ^ In file included from /usr/include/c++/5/deque:64:0, from /usr/include/c++/5/queue:60, from src/robotv/robotvclient.h:30, from src/robotv/robotvclient.cpp:50: /usr/include/c++/5/bits/stl_deque.h:580:8: error: call of overloaded 'swap(MsgPacket***&, MsgPacket***&)' is ambiguous swap(this->_M_map, __x._M_map); ^ In file included from /usr/include/c++/5/bits/stl_pair.h:59:0, from /usr/include/c++/5/bits/stl_algobase.h:64, from /usr/include/c++/5/bits/stl_tree.h:63, from /usr/include/c++/5/map:60, from src/robotv/robotvclient.cpp:30: /usr/include/c++/5/bits/move.h:176:5: note: candidate: void std::swap(_Tp&, _Tp&) [with _Tp = MsgPacket***] swap(_Tp& __a, _Tp& __b) ^ In file included from vdr-2.2.0/include/vdr/i18n.h:14:0, from vdr-2.2.0/include/vdr/config.h:19, from vdr-2.2.0/include/vdr/channels.h:13, from vdr-2.2.0/include/vdr/recording.h:14, from src/robotv/robotvclient.cpp:33: vdr-2.2.0/include/vdr/tools.h:57:31: note: candidate: void swap(T&, T&) [with T = MsgPacket***] template<class T> inline void swap(T &a, T &b) { T t = a; a = b; b = t; } ^ Makefile:126: recipe for target 'src/robotv/robotvclient.o' failed make[1]: *** [src/robotv/robotvclient.o] Error 1
Thanks.