corrupt zlib-headerfile (xbmc-pvr-testing doesn't compile)

Bug #424978 reported by MichaelEiler on 2009-09-05
34
This bug affects 5 people
Affects Status Importance Assigned to Milestone
zlib (Ubuntu)
Undecided
MichaelEiler
Nominated for Karmic by Eric Appleman

Bug Description

   -c -o libavformat/matroskadec.o libavformat/matroskadec.c
In file included from libavformat/matroskadec.c:43:
/usr/include/zlib.h:1366: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gzseek64’
/usr/include/zlib.h:1367: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gztell64’
/usr/include/zlib.h:1368: error: expected declaration specifiers or ‘...’ before ‘off64_t’
/usr/include/zlib.h:1369: error: expected declaration specifiers or ‘...’ before ‘off64_t’
libavformat/matroskadec.c: In function ‘matroska_fix_ass_packet’:
libavformat/matroskadec.c:950: warning: initialization discards qualifiers from pointer target type
make[2]: *** [libavformat/matroskadec.o] Fehler 1
make[2]: Verlasse Verzeichnis '/home/michael/Desktop/MC/xbmc/XBMC/xbmc/cores/dvdplayer/Codecs/ffmpeg'
make[1]: *** [ffmpeg] Fehler 2
make[1]: Verlasse Verzeichnis '/home/michael/Desktop/MC/xbmc/XBMC/xbmc/cores/dvdplayer/Codecs'
make: *** [dvdpcodecs] Fehler 2
make: *** Warte auf noch nicht beendete Prozesse...

I get this error-message when I try to compile the pvr-testing branch of XBMC
And I saw here somebody with the same problem: http://www.ip-phone-forum.de/showthread.php?t=198612
but with a other porgram.

My operating system is Ubuntu Karmic Koala Alpha 5 (32bit) with the latest updates.

If I'm right, the error must be in the following few lines of code:

#if defined(_LARGEFILE64_SOURCE) || _FILE_OFFSET_BITS == 64
    ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
    ZEXTERN off64_t ZEXPORT gzseek64 OF((gzFile, off64_t, int));
    ZEXTERN off64_t ZEXPORT gztell64 OF((gzFile));
    ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, off64_t));
    ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, off64_t));
#endif

the unmodified one looks like this:

#ifdef _LARGEFILE64_SOURCE
   ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
   ZEXTERN off64_t ZEXPORT gzseek64 OF((gzFile, off64_t, int));
   ZEXTERN off64_t ZEXPORT gztell64 OF((gzFile));
   ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, off64_t));
   ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, off64_t));
#endif

regards

Changed in ubuntu:
assignee: nobody → MichaelEiler (eiler-mike)
MichaelEiler (eiler-mike) wrote :

update:

I changed the following line from
#if defined(_LARGEFILE64_SOURCE) || _FILE_OFFSET_BITS == 64
to
#ifdef _LARGEFILE64_SOURCE

and XBMC has compiled without any problems and works great now

regards

Changed in ubuntu:
status: New → Confirmed
Eric Appleman (erappleman) wrote :

Occuring during mplayer compilation.

In file included from libavformat/matroskadec.c:43:
/usr/include/zlib.h:1366: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gzseek64’
/usr/include/zlib.h:1367: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gztell64’
/usr/include/zlib.h:1368: error: expected declaration specifiers or ‘...’ before ‘off64_t’
/usr/include/zlib.h:1369: error: expected declaration specifiers or ‘...’ before ‘off64_t’
make: *** [libavformat/matroskadec.o] Error 1

affects: ubuntu → zlib (Ubuntu)
Eric Appleman (erappleman) wrote :

And yes, the snippet does fix compilation.

Zan Dobersek (zandobersek) wrote :

Occured when compiling gtk+ 2.16.6. Again, snippet fixes it.

Changed in zlib (Ubuntu):
status: Confirmed → Fix Committed

Same thing for when compiling FFMpeg trunk on Karmic Alpha 5 + updates, 32bit machine. Snippet fixed here as well.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers