Xineliboutput non compila con ubuntu 8.04

Tutto quello che ha a che fare con i plugins.

Moderatori: ragno, tapino, alez, zulu, davidea

Rispondi
Stef
Messaggi: 297
Iscritto il: 23 gen 2007, 18:57

Xineliboutput non compila con ubuntu 8.04

Messaggio da Stef »

Ciao a tutti,

per chi ha tentato come me di compilare xineliboutput con ubuntu 8.04 (64bit nel mio caso),forse ha ricevuto questo errore di compilazione:

Codice: Seleziona tutto

xine_input_vdr.c: In function ‘resume_demuxer’:
xine_input_vdr.c:2378: error: ‘xine_stream_t’ has no member named ‘demux_resume’
make[1]: *** [xine_input_vdr.o] Error 1
Ho seguito questa guida di Gringo
http://gringo.netsons.org/wiki/doku.php ... eliboutput

ho usato il più recente snapshot di xinelib (xine-lib-cvs-20080310200000.tar.bz2) presa da questo link http://home.vrweb.de/~rnissl/
Ho provato con l'ultima versione di xineliboutput, la 1.0.3 e quella predente indicata dalla guida la 1.0.2, ma non complivava comunque.

Nella guida di Gringo c'è un comando che mi ha dato una traccia su cui lavorare:

Codice: Seleziona tutto

cvs update -C -r 1.127 xine_input_vdr.c

ho fatto alcune indagini e ho trovato l'errore e il comando nella mailing list di linuxtv.org.
Gringo l'ha usato per usare una versione più vecchia del file xine_input_vdr.c. E così si riusciva a compilare.
Ho isolato le righe che generano il problema di compilazione e preparato una piccola patch che risolve il problema:

Codice: Seleziona tutto

--- xine_input_vdr.c2008-11-15 15:48:34.000000000 +0100
+++ xine_input_vdr.c.correct2008-11-15 15:56:31.000000000 +0100
@@ -2351,15 +2351,9 @@
 
 /******************************* Control *********************************/
 
-#if XINE_VERSION_CODE < 10111
 # define DEMUX_MUTEX_LOCK
 # define DEMUX_MUTEX_UNLOCK
 # define DEMUX_RESUME_SIGNAL
-#else
-# define DEMUX_MUTEX_LOCK    pthread_mutex_lock(&stream->demux_mutex)
-# define DEMUX_MUTEX_UNLOCK  pthread_mutex_unlock(&stream->demux_mutex)
-# define DEMUX_RESUME_SIGNAL pthread_cond_signal(&this->stream->demux_resume)
-#endif
 
 static void suspend_demuxer(vdr_input_plugin_t *this)
 {
Ecco le istruzioni per usarla:

Codice: Seleziona tutto

$ cd /dove/sitrova/vdr/PLUGINS/src/xineliboutput-1.0.3
$ touch stef.patch
se ottente questo errore
touch: impossibile fare touch di `stef.patch': Permesso negato
dovete usare sudo davanti ogni comando
$ gedit  stef.patch
copiate la pach nel file, salvatelo e chidete gedit.

Codice: Seleziona tutto

$ patch < stef.patch
$ cd ../../..
$ make plugins
Questo è tutto ;) , a presto

Stef
Vdr-HD headless (in preparazione), YaVDR 0.3 su portatile, Vu+ Duo in salotto
Enjoy with Linux, it's free ;)
Avatar utente
Gringo
Messaggi: 1796
Iscritto il: 21 gen 2007, 19:36

Re: Xineliboutput non compila con ubuntu 8.04

Messaggio da Gringo »

Appena ho tempo molto la SS2 sul pc di test e faccio qualche prova e se funziona lo metto nella guida,
grazie intanto.
VDRBOX:
Software: ArchLinux 0.8 Don't Panic, VDR 1.6.0-2 con Extension Patch v.62 (> 70 plugins in IT)
Hardware: Intel P4 2,4 Ghz, 1 GB RAM, DVB-S Hauppauge WinTV Nexus-S rev 2.1, DVB-T Terratec Cinergy 1400, telecomando Terratec
Case: Compaq D510 SFF
Rispondi