Pagina 1 di 1

[RISOLTO]lsdvd non trova header files di libdvdread

Inviato: gio 14 feb 2008, 17:10
da 414N
Salve a tutti! :wave:
Sono un utente di Slamd64 12.0 col pallino di compilarsi quel che gli serve a manina, se possibile.
Ultimamente mi è venuta voglia di provare i tool "h264enc" e "xvidenc" e mi sono messo a scaricare e installare le dipendenze richieste. Tra queste è presente lsdvd.
Ho scaricato i sorgenti (versione 0.16 da http://sourceforge.net/projects/lsdvd/), li ho scompattati e lanciato il solito

Codice: Seleziona tutto

./configure --libdir=/usr/local/lib64
dato che le librerie a 64 bit le piazzo lì, di solito.
Il configure produce il seguente output:

Codice: Seleziona tutto

checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for DVDOpen in -ldvdread... yes
checking for dvdread/ifo_read.h... no
configure: error: Header files for dvdread not found
Premetto che gli header di libdvdread sono correttamente installati in /usr/local/include/dvdread.
Nel cercare una soluzione, mi sono imbattuto nella seguente pagina: http://www.linuxquestions.org/questions ... ost3017735, ma:
  • non ho nessun file di pkgconfig riguardante dvdread da nessuna parte;
  • anche definendo il flag

    Codice: Seleziona tutto

    -I/usr/local/include
    per il preprocessore (CPPFLAGS) prima di lanciare il ./configure il risultato non cambia.
Qualcuno ha un'idea?

Re: lsdvd non trova header files di libdvdread

Inviato: gio 14 feb 2008, 17:35
da conraid
414N ha scritto:
  • non ho nessun file di pkgconfig riguardante dvdread da nessuna parte;
  • Qualcuno ha un'idea?
Se il problema è pkgconfig e quel software ancora non ce l'ha, lo crei tu. E' solo un file.
Nella pagina che hai linkato c'è un esempio per pango, ma se vai in /usr/lib/pkgconfig ne trovi molti di "esempi"

Re: lsdvd non trova header files di libdvdread

Inviato: gio 14 feb 2008, 17:39
da 414N
Risolto! :D
Dando una letta ai known bugs di questa release (http://sourceforge.net/tracker/index.ph ... tid=823590) ho scoperto che questo comportamento è dovuto al fatto che sia nel configure che nel file lsdvd.c bisogna spostare l'inclusione della libreria stdint.h prima di dvdread.
In soldoni il configure va cambiato da così:

Codice: Seleziona tutto

2890:     #include <dvdread/ifo_read.h>
2891:    #include <stdint.h>
a così:

Codice: Seleziona tutto

2890:     #include <stdint.h>
2891:     #include <dvdread/ifo_read.h>
e il file lsdvd.c da:

Codice: Seleziona tutto

16:    #include <dvdread/ifo_read.h>
17:    #include <string.h>
18:    #include <sys/stat.h>
19:    #include <stdio.h>
20:    #include <stdlib.h>
21:    #include <unistd.h>
22:    #include <stdint.h>
23:    #include "lsdvd.h"
24:    #include "ocode.h"
a:

Codice: Seleziona tutto

16:    #include <string.h>
17:    #include <sys/stat.h>
18:    #include <stdio.h>
19:    #include <stdlib.h>
20:    #include <unistd.h>
21:    #include <stdint.h>
22:    #include <dvdread/ifo_read.h>
23:    #include "lsdvd.h"
24:    #include "ocode.h"
e sia il configure che la compilazione andranno a buon fine.

PS: Avevo provato a creare un file dvdread.pc ex-novo prendendo spunto da un altro file presente in quella directory, ma continuava imperterrito a darmi lo stesso errore. Comunque grazie conraid! :notworthy:
PPS: Come faccio a "taggare" il thread come risolto?

Re: lsdvd non trova header files di libdvdread

Inviato: gio 14 feb 2008, 17:43
da conraid
414N ha scritto: PPS: Come faccio a "taggare" il thread come risolto?
Clicchi su Modifica nel primo messaggio e cambi il titolo

Re: lsdvd non trova header files di libdvdread

Inviato: gio 14 feb 2008, 17:55
da 414N
Grazie mille!