On Sat, 10 Jan 2004 [EMAIL PROTECTED] wrote:
> I have checked the List Archive and apart from a Patch to Libquicktime in 2002
> I am installing libquicktime-0.9.2 with jpeg-mmx-0.1.4 and
> mjpegtools-1.6.1.92.libmjpeg
> I have looked at libmjpeg.h lines 44, etc and libmjpeg.c, lines 96 etc, but am
> In file included from libmjpeg.c:25:
> libmjpeg.h:44: error: parse error before "jmp_buf"
> libmjpeg.h:44: warning: no semicolon at end of struct or union
> libmjpeg.h:70: error: field `jpeg_error' has incomplete type
> libmjpeg.c: In function `mjpeg_error_exit':
> libmjpeg.c:96: warning: implicit declaration of function `longjmp'
> libmjpeg.c:96: error: dereferencing pointer to incomplete type
> libmjpeg.c: In function `append_buffer':
> libmjpeg.c:325: warning: implicit declaration of function `memcpy'
> libmjpeg.c: In function `decompress_field':
> libmjpeg.c:586: warning: implicit declaration of function `setjmp'
> libmjpeg.c: In function `find_marker':
> libmjpeg.c:1338: warning: comparison between signed and unsigned
> libmjpeg.c: In function `table_offsets':
> libmjpeg.c:1392: warning: implicit declaration of function `bzero'
> make[3]: *** [libmjpeg.lo] Error 1
> make[3]: Leaving directory
It took a little while to realize that the errors were from
building libquicktime instead of mjpegtools - time for another
cup of coffee ;)
The problem I suspect is the version of the PNG library installed
on your system. What version of libpng do you have?
libquicktime is (incorrectly I believe) using <png.h> to obtain
the definition of 'jmp_buf'. If you look at line 34 in libmjpeg.h
you will see:
#include <png.h> /* Need setjmp.h included by png.h */
If a program needs <setjmp.h> it should include it explicitly rather
than relying on another unrelated header file. libmjpeg.h should
have done a '#include <setjmp.h>' rather than assuming that <png.h>
would do it.
It seems that later versions of libpng do include <setjmp.h> and
the libquicktime folks rely on that behaviour. I'd report that
as a bug in libquicktime.
In the meantime you can work around this in two ways:
1) Add a '#include <setjmp.h>' to libmjpeg.h
or
2) Install a newer version of libpng that has the libquicktime
desired behaviour.
The other warning errors (about bzero, etc) I think are due to not
including <string.h>. It's possible that libquicktime is relying
on <png.h> to also do the include of string. You can add a
'#include <string.h>' and see if that causes the other warning errors
to go away.
Good Luck!
Cheers,
Steven Schultz
-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html
_______________________________________________
Mjpeg-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users