vdr-1.7.0 mit etx-patch 62 lässt sich nicht übersetzen

  • Hallo Zusammen,


    ich wollte mich mal mit dem Thema VDR und HDTV auseinandersetzten, leider lässt sich der VDR nicht übersetzen, und endet mit folgender Fehlermeldung:


    Code
    vdr02 VDR # make
    g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -c -DUSE_ANALOGTV -DUSE_ATSC -DUSE_CHANNELSCAN -DUSE_CMDSUBMENU -DUSE_CUTTERLIMIT -DUSE_CUTTERQUEUE -DUSE_CUTTIME -DUSE_DDEPGENTRY -DUSE_DELTIMESHIFTREC -DUSE_DOLBYINREC -DUSE_DVBPLAYER -DUSE_DVBSETUP -DUSE_DVDARCHIVE -DUSE_DVLRECSCRIPTADDON -DUSE_DVLVIDPREFER -DUSE_DVLFRIENDLYFNAMES -DUSE_EM84XX -DUSE_GRAPHTFT -DUSE_HARDLINKCUTTER -DUSE_IPTV -DUSE_JUMPPLAY -DUSE_LIEMIKUUTIO -DUSE_LIRCSETTINGS -DUSE_LIVEBUFFER -DUSE_LNBSHARE -DUSE_MAINMENUHOOKS -DUSE_MENUORG -DUSE_NOEPG -DUSE_OSDMAXITEMS -DUSE_PINPLUGIN -DUSE_PLUGINMISSING -DUSE_ROTOR -DUSE_SETTIME -DUSE_SOURCECAPS -DUSE_SORTRECORDS -DUSE_SYNCEARLY -DUSE_TIMERCMD -DUSE_TIMERINFO -DUSE_TTXTSUBS -DUSE_VALIDINPUT -DUSE_VOLCTRL -DUSE_WAREAGLEICON -DUSE_YAEPG -DREMOTE_KBD -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS1\" -D_GNU_SOURCE -DVIDEODIR=\"/video\" -DCONFDIR=\"/video\" -DPLUGINDIR=\"./PLUGINS/lib\" -DLOCDIR=\"./locale\" -DUSE_DVDCHAPJUMP -DUSE_PLUGINAPI -I/usr/include/freetype2 -I/usr/local/src/DVB/linux/include -I/usr/include/dvdnav dvbdevice.c
    dvbdevice.c: In member function 'bool cDvbTuner::SetFrontend()':
    dvbdevice.c:296: error: 'struct dvbfe_info' has no member named 'delivery'
    dvbdevice.c:311: error: 'struct dvbfe_info' has no member named 'delivery'
    dvbdevice.c:326: error: 'struct dvbfe_info' has no member named 'delivery'
    dvbdevice.c:348: error: 'struct dvbfe_info' has no member named 'delivery'
    make: *** [dvbdevice.o] Error 1
    vdr02 VDR # make


    Vorgegangen bin ich wie folgt:


    - Multiproto Treiber installiert
    - ffmpeg, xine-ui, xine-lib aus CVS installiert.
    - vdr-1.7.0 downgeloadet und installert.
    - den VDR mit zulus Extensions Patch-62 gepatched (--> ging ohne Hunks oder Rejects)
    - make



    Kennt Jemand diese Problem, oder besser noch, hat Jemand eine Lösung?

  • Moin, moin,


    ich weiss ja nicht welche Patches Du sonst noch einspielst, ich hatte einfach die E-Tobi 1.7.0 Variante genutzt. Unter "debian/patches" kann man dort in "00list" einstellen welche Patches gegen den VDR gefahren werden sollen. Da habe ich den "99_dvb-api-wrapper" auskommentiert, weil der den VDR an die alte API anbindet und den Nissl-Patch für VDR 1.7.0 aus der ML dafür eingespielt. Das hat auch prima geklappt.


    Die Fehlermeldung "dvbdevice.c:296: error: 'struct dvbfe_info' has no member named 'delivery'" klingt verdächtig danach, dass der VDR die alte API erwartet und mit den Neuerungen wie "dvbfe_info" etc. nix anfangen kann.


    Gruß
    KK

  • Hallo C-3PO,


    du hast alle Patches aktiviert in deiner make.config.


    Zudem sollte der Parameter DVBDIR =


    nach /.../multiproto/linux zeigen.


    Soweit ich das sehe geht er nach -I/usr/local/src/DVB/linux/include, liegen da die multiproto-Treiber?


    Gruß
    Wolfgang

  • Zitat

    Original von kk234
    Die Fehlermeldung "dvbdevice.c:296: error: 'struct dvbfe_info' has no member named 'delivery'" klingt verdächtig danach, dass der VDR die alte API erwartet und mit den Neuerungen wie "dvbfe_info" etc. nix anfangen kann.


    Gruß
    KK


    Für mich liest es sich genau umgekehrt. dvbdevice.c ist Teil des VDR und dvbfe_info neu. Also werden die alten dvb header eingebunden die das noch nicht kennen.

  • Zitat

    Original von kk234
    .....
    Die Fehlermeldung "dvbdevice.c:296: error: 'struct dvbfe_info' has no member named 'delivery'" klingt verdächtig danach, dass der VDR die alte API erwartet und mit den Neuerungen wie "dvbfe_info" etc. nix anfangen kann.
    .....


    Zitat

    Original von wirbel
    Für mich liest es sich genau umgekehrt. dvbdevice.c ist Teil des VDR und dvbfe_info neu. Also werden die alten dvb header eingebunden die das noch nicht kennen.




    hmmm.....,


    und wie sage ich den VDR, dass er die "neue" API nehmen soll, bzw, wie binde ich die "neuen header" ein? [Blockierte Grafik: http://img183.imageshack.us/img183/4952/iconconfusedbn9.gif]

  • Hi,


    für vdr-1.7.0-ext mit den Multiproto-Treibern musst du noch vdr-1.7.0-ext_multiproto-delivery-fix.diff oder vdr-1.7.0-ext_h264.diff anwenden.



    Zitat

    und wie sage ich den VDR, dass er die "neue" API nehmen soll, bzw, wie binde ich die "neuen header" ein?


    Wenn du die Multiproto-Treiber im System installiert hast würde ich stumpf die header überschreiben

    Code
    cp -rf $SOURCEDIR/multiproto/linux/include/linux/dvb /usr/include/linux


    Ansonsten so wie Wolfgang geschrieben hat.


    Gruß
    Marc

  • Zitat

    Original von zulu
    .....
    für vdr-1.7.0-ext mit den Multiproto-Treibern musst du noch vdr-1.7.0-ext_multiproto-delivery-fix.diff oder vdr-1.7.0-ext_h264.diff anwenden.
    .....


    :bounce3 1000 Dank, :bounce3


    das war die Lösung.


    Code
    vdr02 VDR # patch -p1 < /usr/local/src/patches/VDR-Extensions-Patch-62/vdr-1.7.0-ext_h264.diff

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!