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

Bug #424978 reported by MichaelEiler
34
This bug affects 5 people
Affects Status Importance Assigned to Milestone
zlib (Ubuntu)
Fix Committed
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)
Revision history for this message
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
Revision history for this message
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)
Revision history for this message
Eric Appleman (erappleman) wrote :

And yes, the snippet does fix compilation.

Revision history for this message
Zan Dobersek (zandobersek) wrote :

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

Changed in zlib (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Fabricio Campos Zuardi (fabricio) wrote :

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  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.