[mailbox] compiliert nicht unter GCC6

  • Hallo,


    hat schon jemand das mailbox-plugin unter GCC6 zum laifen gebracht? Ich bekomme immer Fehler, wie diese:


    Code
    1. ...
    2. AxPluginSetup.cpp: In Elementfunktion »bool AxPluginSettings::parseSetup(const char*, const char*)«:
    3. ./AxLib/include/Ax/Tools/Trace.h:44:37: Fehler: literaler Operator für Zeichenketten »operator""Y« mit Argumenten »const char [10]«, »long unsigned int« konnte nicht gefunden werden
    4. #define wswarnsyslog(Y...) isyslog("mailbox: "Y)
    5. ... ^


    oder, wenn ich das durch einen per google gefundenen Tipp in dem File AxLib/include/Ax/Tools/Trace.h von


    Code
    1. ...
    2. //-----------------------------------------------------------------------------
    3. // define macros for users
    4. //-----------------------------------------------------------------------------
    5. #define wsdebugsyslog(Y...) dsyslog("mailbox: "Y)
    6. #define wswarnsyslog(Y...) isyslog("mailbox: "Y)
    7. #define wserrorsyslog(Y...) esyslog("mailbox: "Y)
    8. ...


    nach

    Code
    1. ...
    2. //-----------------------------------------------------------------------------
    3. // define macros for users
    4. //-----------------------------------------------------------------------------
    5. #define wsdebugsyslog(Y...) dsyslog("mailbox: " Y)
    6. #define wswarnsyslog(Y...) isyslog("mailbox: " Y)
    7. #define wserrorsyslog(Y...) esyslog("mailbox: " Y)
    8. ...


    geändert habe kommt dann dies hier:



    ... und hier reicht mein rudimentäres Verständnis für C++ nicht aus....


    Gruß
    msv

  • funzt es, wenn du dem compiler -std=gnu++98 vorgibst?

  • Hi,


    ich häng mich hier mal dran. Die Fehler die in der Trace.h gemeldet wurden sind mit dem empfohlenen Patch behoben ich erhalte aber mit gcc 6.2 nun diesen Fehler

    Code
    1. root@VDR-Server:/plugins/mailbox# make
    2. g++ -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/usr/local/src/DVB/linux/include/uapi -I/media/hdd2_root/usr/local/src/vdr-2.3.2/include -fno-operator-names -DHAVE_VDR=1 -std=gnu++98 -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"mailbox"' -D__STL_CONFIG_H -I./AxLib/include -I/usr/include/c-client -o AxMenuMailBoxView.o AxMenuMailBoxView.cpp
    3. AxMenuMailBoxView.cpp: In member function ‘Ax::Mail::MailBox* AxMenuMailBoxView::getCurrentMailBox() const’:
    4. AxMenuMailBoxView.cpp:400:118: error: cannot dynamic_cast ‘((const AxMenuMailBoxView*)this)->AxMenuMailBoxView::<anonymous>.Ax::Vdr::OsdMenuBase<cOsdMenu>::<anonymous>.cOsdMenu::<anonymous>.cList<T>::Get<cOsdItem>(((AxMenuMailBoxView*)((const AxMenuMailBoxView*)this))->AxMenuMailBoxView::<anonymous>.Ax::Vdr::OsdMenuBase<cOsdMenu>::<anonymous>.cOsdMenu::Current())’ (of type ‘const class cOsdItem*’) to type ‘class AxMailBoxItem*’ (conversion casts away constness)
    5. AxMailBoxItem *aMailBoxItem = dynamic_cast<AxMailBoxItem *>(Get(const_cast<AxMenuMailBoxView *>(this)->Current()));
    6. ^
    7. Makefile:172: die Regel für Ziel „AxMenuMailBoxView.o“ scheiterte
    8. make: *** [AxMenuMailBoxView.o] Fehler 1


    Kann mir jemand sagen, wie ich das beheben kann ?


    Gruss


    Hollywood

    Server: Debian Stretch x64 mit Softhddevice, Kernel 4.11.0, ASRock H81M, Intel i3-4150, NVIDIA GPU GeForce GT 520 (GF119), 2 x 2048 MB DDR2-RAM, 2 x Technotrend S2-1600, 1 x DD Cine S2, Lirc-Serial mit One4All URC 7960, Phillips 47'' FullHD
    Client: Debian Stretch x64 mit XBMC+vnsiserver, Kernel 4.10.0, ASRock B75 Pro3-M, Intel CPU G630, NVIDIA GPU GeForce GT 610 (GF119), 2 x 2048 MB DDR3-RAM, 1 xTechnisat SkyStar2 HD, SilverStone Milo ML03, ASRock Smart Remote CIR mit Logitech Harmony 650, Beamer 120'' FullHD-3D

  • Hi Hollywood,


    wenn ich es richtig sehe, compilierst Du das Mailbox-Plugin (0.7.1?) mit gcc-6.2 gegen vdr-2.3.2, richtig?


    Aus Zeitmangel habe ich mich noch nicht mit vdr-2.3.x beschäftigt und auf meinen Gentoo-Installationen ist noch gcc-4.9 aktiv.


    Habe trotzdem mal auf die Schnelle ein Ubuntu 16.10 mit gcc-6.2 einer VM installiert, die Sourcen von VDR und dem vdr-mailbox-0.7.1 ausgepackt, den oben angesprochenen Patch eingespielt und ein paar Änderungen vorgenommen. Compilieren konnte ich das Plugin nach den Änderungen, ausführen (d.h. testen) konnte ich es in der VM allerdings nicht.


    Würdest Du bitte mal beigefügten Patch auf ein frisch ausgepacktes vdr-mailbox-0.7.1 anwenden und testen? Der obige Patch ist in meiner Datei auch enthalten, sollte/muss also nicht auch noch angewandt werden.


    HTH, Alex

    Dateien

  • Hi Alex,


    alles Richtig mailbox 0.7.1 unter Debian Stretch mit GCC 6.2 gegen VDR 2.3.2.


    Und es kompiliert und funktioniert einwandfrei :]:]:] .


    DANKE und Gruss


    Hollywood

    Server: Debian Stretch x64 mit Softhddevice, Kernel 4.11.0, ASRock H81M, Intel i3-4150, NVIDIA GPU GeForce GT 520 (GF119), 2 x 2048 MB DDR2-RAM, 2 x Technotrend S2-1600, 1 x DD Cine S2, Lirc-Serial mit One4All URC 7960, Phillips 47'' FullHD
    Client: Debian Stretch x64 mit XBMC+vnsiserver, Kernel 4.10.0, ASRock B75 Pro3-M, Intel CPU G630, NVIDIA GPU GeForce GT 610 (GF119), 2 x 2048 MB DDR3-RAM, 1 xTechnisat SkyStar2 HD, SilverStone Milo ML03, ASRock Smart Remote CIR mit Logitech Harmony 650, Beamer 120'' FullHD-3D

  • Hi Hollywood,


    Prima, vielen Dank, für die Rückmeldung.


    bye, Alex