vdr-plugins compilieren - warnings und errors (openSUSE 11.4)

  • Hallo Forum


    Beim compilieren von Plugins erhalte ich einige errors und warnings die ich nicht weg kriege.
    Hier im Forum, im Wiki und im www habe ich nichts gefunden, was mir weiterhilft.
    Ich versuche die Plugins vdr-dvd-plugin, vdr-epgsearch-plugin, vdr-dvdswitch-plugin zu compilieren.
    Insbesondere vdr-epgsearch bringt regelmässig Fehler - aber step by step...


    Um die Situation einzugrenzen, versuche ich mal das Problem etwas globaler zu beschreiben.


    Hier sind einige Angaben zu den Versionen:


    openSUSE 11.4
    VDR 1.6.0-2
    Patches
    vdr-1.6.0-1.diff
    vdr-1.6.0-2.diff
    vdr-1.6.0-gcc-attachment.patch
    vdr-1.6.0-liemikuutio-1.27.diff.gz
    gcc45-c++" ver="4.5.1_20101208" rel="9.8" arch="i586"/>


    Softwareanforderungen für dvd- und dvd-switch Plugin - installierte Versionen aus openSUSE Repositories
    a52dec" epoch="0" ver="0.7.5svn" rel="8.4" arch="i586"/>
    libdvdread4" epoch="0" ver="4.1.3" rel="15.1" arch="i586"/>
    libdvdread3-devel" epoch="0" ver="0.9.7" rel="7.3" arch="i586"/>
    libdvdread3" epoch="0" ver="0.9.7" rel="7.3" arch="i586"/>
    libdvdread-devel" epoch="0" ver="4.1.3" rel="15.1" arch="i586"/>
    libdvdnav4" epoch="0" ver="4.1.3" rel="11.1" arch="i586"/>
    libdvdnav-devel" epoch="0" ver="4.1.3" rel="11.1" arch="i586"/>
    libdvdcss2" epoch="0" ver="1.2.10" rel="2.pm.3.1" arch="i586"/>
    libdvdcss-devel" epoch="0" ver="1.2.10" rel="2.pm.3.1" arch="i586"/>


    Muss "libdvdss" vorhanden sein - reicht libdvdcss2 nicht?




    Insbesondere diese warnings/errors

    Code
    1. menu.c: In member function ‘virtual eOSState cMenuText::ProcessKey(eKeys)’:
    2. menu.c:665:5: warning: case value ‘32769’ not in enumerated type ‘eKeys’
    3. menu.c:667:5: warning: case value ‘32773’ not in enumerated type ‘eKeys’
    4. menu.c:669:5: warning: case value ‘32774’ not in enumerated type ‘eKeys’


    Code
    1. menuitems.c: In member function ‘virtual eOSState cMenuEditStrItem::ProcessKey(eKeys)’:
    2. menuitems.c:515:5: warning: case value ‘32769’ not in enumerated type ‘eKeys’


    Code
    1. osdbase.c: In member function ‘virtual eOSState cOsdMenu::ProcessKey(eKeys)’:
    2. osdbase.c:550:5: warning: case value ‘32769’ not in enumerated type ‘eKeys’
    3. osdbase.c:552:5: warning: case value ‘32773’ not in enumerated type ‘eKeys’
    4. osdbase.c:554:5: warning: case value ‘32774’ not in enumerated type ‘eKeys’


    Code
    1. epgsearchsvdrp.c: In member function ‘virtual cString cPluginEpgsearch::SVDRPCommand(const char*, const char*, int&)’:
    2. epgsearchsvdrp.c:750:44: error: invalid conversion from ‘const char*’ to ‘char*’



    AUSZUG aus Install-Log



    Wenn nötig, kann ich ein vollständiges Log-File anhängen.



    Das "Make.config" ist laut Anweisung für das dvd-plugin mit

    Code
    1. + INCLUDES += -I$(VDRDIR)/include -I$(DVBDIR)/include $(shell dvdnav-config --cflags)


    ergänzt.




    Jeder Hinweis und Hilfe sind willkommen.


    thx

    VDR1_Debian e-TOBI (TestVDR)
    Debian Wheezy 7 | VDR 2.0.2 e-TOBI Pakete


    VDR2_Debian e-TOBI (VDR)
    Debian Squeezy 6 | VDR 1.7.28 e-TOBI Pakete
    Plugins: xineliboutput,epgsearch,markad,dvd,dvdswitch,streamdev,remote,xmltv2vdr | Addons: vdradmin-am,acpiwakeup,vdrseriestimer.pl
    HW | DELL Dimension 8200 | P4 1.7GHz | 1 GB RAM | 1TB HDD | Netgear Realtek RTL 8139 | Creative SB Live! | ATI Radeon 9600 | Hauppauge Win-TV Nexus S (Rev.2.1)

    VDR3 Ubuntu 12.04 LTS / yaVDR0.5

    HW | Antec | Gigabyte GA-F2A88XM-D3H | AMD A6-5400K | 8GB-RAM | TT-S1600 | ASUS GT610/2048 passiv | 2x2TB HD
    HW-Additions | QNAP-NAS | Panasonic TV | HAMA MCE Remote
    SW | yaVDR0.5/2.0.6 stable | XBMC 13.1 | streamdev | epgsearch | markad | vdrseriestimer | vdradmin-am


    :rtfm :alien2 - Grüsse vom Bodensee

  • Hi, ich denke, Du willst da etwas zu viel: die warnings "not in enumerated type eKeys" sind harmlos und bekommt man nicht weg ohne den VDR Quelltext zu ändern. Da wird IIRC ein key|repeat verkünpft und zusammen kennt der gcc das nicht.


    Beim epgsearch-Plugin gibts ja mittlerweile schon die Version 1.0.0, die würde ich erst mal versuchen, ansonsten müsste man einen Patch dafür suchen - wieso willst Du eigentlich noch VDR 1.6 kompilieren?


    Failed plugins ist nur epgsearch - die anderen scheinen also alle ohne Errors zu compilieren

  • Hi FireFly


    Werden denn durch die errors/zuviele warnings nicht die compiler Vorgänge abgebrochen und die Plugins nicht richtig erstellt?


    Ich dachte, dass evtl. ein oder mehrere Patches nicht richtig angewendet sind - möglicherweise sogar das Make.config total falsch ist oder aus den openSUSE Paketen Fehler generiert werden.


    Darf ich dich fragen, wie du in solchen Fällen vorgehst?
    (Beispiel epgsearch) Ich habe 0.9.24, 0.9.25.beta5 und beta 25 durchprobiert - nach Try and Error-Prinzip - 1.0.0 noch nicht.


    Mit VDR-1.6.0 habe ich angefangen - vor ein paar Monaten - da ich (noch) keine VDPAU / S2 fähige Hardware habe. Unterdessen habe ich einen 2. Rechner mit Debian/e-tobi 1.7.28 aufgesetzt - was auch ohne Probleme funktionierte.
    Auf openSUSE/VDR 1.6.0 mache ich weiter, um die Zusammenhänge und Eigenheiten ein bisschen besser zu verstehen - und da helfen mir hilfsbereite Leute wie du und viele andere sehr - also vielen Dank für die kompetente Unterstützung !! :tup :tup :tup

    VDR1_Debian e-TOBI (TestVDR)
    Debian Wheezy 7 | VDR 2.0.2 e-TOBI Pakete


    VDR2_Debian e-TOBI (VDR)
    Debian Squeezy 6 | VDR 1.7.28 e-TOBI Pakete
    Plugins: xineliboutput,epgsearch,markad,dvd,dvdswitch,streamdev,remote,xmltv2vdr | Addons: vdradmin-am,acpiwakeup,vdrseriestimer.pl
    HW | DELL Dimension 8200 | P4 1.7GHz | 1 GB RAM | 1TB HDD | Netgear Realtek RTL 8139 | Creative SB Live! | ATI Radeon 9600 | Hauppauge Win-TV Nexus S (Rev.2.1)

    VDR3 Ubuntu 12.04 LTS / yaVDR0.5

    HW | Antec | Gigabyte GA-F2A88XM-D3H | AMD A6-5400K | 8GB-RAM | TT-S1600 | ASUS GT610/2048 passiv | 2x2TB HD
    HW-Additions | QNAP-NAS | Panasonic TV | HAMA MCE Remote
    SW | yaVDR0.5/2.0.6 stable | XBMC 13.1 | streamdev | epgsearch | markad | vdrseriestimer | vdradmin-am


    :rtfm :alien2 - Grüsse vom Bodensee

  • Hi,


    Werden denn durch die errors/zuviele warnings nicht die compiler Vorgänge abgebrochen und die Plugins nicht richtig erstellt?


    nein, das sind nur warnings - da gehen gerade neuere gccs sehr freigiebig damit um 8-<
    Da bricht auch nix ab, die Plugins sollten ordnungsgemäß erstellt werden.
    Du kannst das ja kontrollieren - in jedem Plugin-Source-Verzeichnis muss es ein oder mehrere .so Files mit aktuellem Timestamp geben.


    Mit dem Error, den du für epgsearch hast, ist das was Anderes - da ist das Plugin wirklich nicht erstellt worden.


    Ich dachte, dass evtl. ein oder mehrere Patches nicht richtig angewendet sind - möglicherweise sogar das Make.config total falsch ist oder aus den openSUSE Paketen Fehler generiert werden.


    Nein, das hättest du beim Patchen schon gemerkt - der Patch mault ja auch rum, wenn ihm was nicht passt.
    Es kann aber auch sein, dass weder der Patch mault noch der Compiler und dann dein Plugin trotzdem crasht - das wäre auch durchaus drin.


    Darf ich dich fragen, wie du in solchen Fällen vorgehst?
    (Beispiel epgsearch) Ich habe 0.9.24, 0.9.25.beta5 und beta 25 durchprobiert - nach Try and Error-Prinzip - 1.0.0 noch nicht.


    Mach mal - könnte helfen.
    Ansonsten würde ich da auch VDR 1.7.28 installieren.


    Mit VDR-1.6.0 habe ich angefangen - vor ein paar Monaten - da ich (noch) keine VDPAU / S2 fähige Hardware habe. Unterdessen habe ich einen 2. Rechner mit Debian/e-tobi 1.7.28 aufgesetzt - was auch ohne Probleme funktionierte.
    Auf openSUSE/VDR 1.6.0 mache ich weiter, um die Zusammenhänge und Eigenheiten ein bisschen besser zu verstehen - und da helfen mir hilfsbereite Leute wie du und viele andere sehr - also vielen Dank für die kompetente Unterstützung !! :tup :tup :tup


    Ciao.
    Michael.

  • Bei epgsearch braucht man nicht so pingelig sein, da machen die aktuellen Entwicklerversionen üblicherweise keine Probleme. Ich würde gleich den letzten GIT Stand ausschecken.


    cu

  • Mit dem Error, den du für epgsearch hast, ist das was Anderes - da ist das Plugin wirklich nicht erstellt worden.

    genau, deshalb sagt das make ja auch:
    "*** failed plugins: epgsearch" und mosert sonst keine Plugins an. Damit hat es nur bei epgsearch Errors gegeben



    Nein, das hättest du beim Patchen schon gemerkt - der Patch mault ja auch rum, wenn ihm was nicht passt.
    Es kann aber auch sein, dass weder der Patch mault noch der Compiler und dann dein Plugin trotzdem crasht - das wäre auch durchaus drin.

    was aber äußerst selten ist.



    Mach mal - könnte helfen.

    Vermutlich muss im Quelltext mehrfach ein char* mit "const char*" ersetzt werden da das nachträglich als Fehlerquelle erkannt wurde und deshalb geändert wurde. Plugins müssen dann angepasst werden. Evtl. gibts irgendwo ein Patch dafür oder gleiche die aktuellste Version nehmen.