000
16.07.2019, 18:18 Uhr
hubach
|
Hallo zusammen
Um ein paar alte Devolo-dlan-Adapter zu betreiben, möchte ich die vom Hersteller angebotene Linux-Software installieren.
Weit bin ich nicht gekommen, den bereits mit dem make-Befehl erhalte ich eine ellenlange Fehlermeldung.
Hier ein Ausschnitt davon, der sich mehrfach wiederholt.
Zitat: |
************************************************************************ In file included from /usr/include/x86_64-linux-gnu/c++/7/bits/c++allocator.h:33:0, from /usr/include/c++/7/bits/allocator.h:46, from /usr/include/c++/7/string:41, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/fstream:38, from tools/dlanpasswd.cpp:7: /usr/include/c++/7/ext/new_allocator.h: In instantiation of ‘void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Args = {const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData&}; _Tp = std::_List_node<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’: /usr/include/c++/7/bits/alloc_traits.h:475:4: required from ‘static void std::allocator_traits<std::allocator<_CharT> >::construct(std::allocator_traits<std::allocator<_CharT> >::allocator_type&, _Up*, _Args&& ...) [with _Up = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Args = {const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData&}; _Tp = std::_List_node<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>; std::allocator_traits<std::allocator<_CharT> >::allocator_type = std::allocator<std::_List_node<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo> >]’ /usr/include/c++/7/bits/stl_list.h:575:33: required from ‘std::__cxx11::list<_Tp, _Alloc>::_Node* std::__cxx11::list<_Tp, _Alloc>::_M_create_node(_Args&& ...) [with _Args = {const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData&}; _Tp = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Alloc = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>; std::__cxx11::list<_Tp, _Alloc>::_Node = std::_List_node<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’ /usr/include/c++/7/bits/stl_list.h:1801:32: required from ‘void std::__cxx11::list<_Tp, _Alloc>::_M_insert(std::__cxx11::list<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData&}; _Tp = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Alloc = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>; std::__cxx11::list<_Tp, _Alloc>::iterator = std::_List_iterator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’ /usr/include/c++/7/bits/stl_list.h:1133:4: required from ‘void std::__cxx11::list<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData&}; _Tp = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Alloc = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’ /usr/include/c++/7/bits/stl_list.h:1730:18: required from ‘void std::__cxx11::list<_Tp, _Alloc>::_M_initialize_dispatch(_InputIterator, _InputIterator, std::__false_type) [with _InputIterator = const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData*; _Tp = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Alloc = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’ /usr/include/c++/7/bits/stl_list.h:712:26: required from ‘std::__cxx11::list<_Tp, _Alloc>::list(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const HomePlugAvMMEs::ThunderNetworkInfoV1::StaData*; <template-parameter-2-2> = void; _Tp = HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo; _Alloc = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>; std::__cxx11::list<_Tp, _Alloc>::allocator_type = std::allocator<HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo>]’ tools/../common/hpmmes.h:783:132: required from here /usr/include/c++/7/ext/new_allocator.h:136:4: error: ‘HomePlugAvMMEs::ThunderNetworkInfoCommon::StationInfo::StationInfo(const TStaData&) [with TStaData = HomePlugAvMMEs::ThunderNetworkInfoV1::StaData]’ is private within this context { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from tools/../common/dlanmonitor.h:14:0, from tools/dlanpasswd.cpp:11: tools/../common/hpmmes.h:645:7: note: declared private here StationInfo(const TStaData& d) : ^~~~~~~~~~~ makefile:15: recipe for target 'tools/dlanpasswd.o' failed make: *** [tools/dlanpasswd.o] Error 1 ***************************************************************************
|
Wenn ich das richtig verstehe, hat es mit diesem Programmteil aus der hpmmes.h zu tun: (Zeile 645 ist fett markiert)
C++: |
************************************************************************ namespace ThunderNetworkInfoCommon { enum { eMMType = 0x0038, eMMTypeReq = eVS + eMMType + eReq, eMMTypeCnf = eVS + eMMType + eCnf }; enum { eStation = 0, eProxyCCo = 1, eCCo = 2 }; class StationInfo { CMACAddress addr, firstBridgedAddr; uint32_t uAvgTxPhyRateMbps, uAvgRxPhyRateMbps; friend class std::list<StationInfo>; template<class TStaData> StationInfo(const TStaData& d) : addr(d.cAddr), firstBridgedAddr(d.cFirstBridgedAddr), uAvgTxPhyRateMbps(letohx(d.uAvgTxPhyRateMbps)), uAvgRxPhyRateMbps(letohx(d.uAvgRxPhyRateMbps)) {} public: const CMACAddress& GetAddress() const { return addr; } const CMACAddress& GetFirstBridgedAddress() const { return firstBridgedAddr; } uint32_t GetTxCodedRate() const { return uAvgTxPhyRateMbps; } uint32_t GetRxCodedRate() const { return uAvgRxPhyRateMbps; } double GetTxRawRate() const { return uAvgTxPhyRateMbps * 21.0 / 16.0; } double GetRxRawRate() const { return uAvgRxPhyRateMbps * 21.0 / 16.0; } }; } ***********************************************************************3
|
Mit meinen alten topdown-"Programmierkenntnissen" kann ich das Problem nicht lösen. Ein einfaches "public" vor "const" bringt auch keinen Erfolg.
Ich vermute mal, wenn man weiss wie, ist das keine Riesensache ... oder täusche ich mich da?
Bin für alle Hinweise dankbar.
Grüsse Hans
Und sorry, die schönen weissen Textfelder kriege ich nicht hin. Dieser Post wurde am 17.07.2019 um 08:38 Uhr von FloSoft editiert. |