On 25/08/13 11:27, lux-integ wrote:
Greetings
I am trying to compile swftools-0.92 an optional dependency of gnash (
http://www.linuxfromscratch.org/blfs/view/svn/xsoft/gnash.html ).
The computer has giflib5 (
http://www.linuxfromscratch.org/blfs/view/svn/general/giflib.html ) installed
It seems there is a problem with giflib5. I tried searching for patches but
the best I came across is this
( http://nongnu.13855.n7.nabble.com/PATCH-build-support-for-giflib-5-x-
td169585.html
)
I tried to construct a patch thereform but most of the effort returned the
following
#------------Applying patch
patching file src/gif2swf.c
Hunk #1 FAILED at 222.
Hunk #2 FAILED at 230.
Hunk #3 FAILED at 465.
Hunk #4 FAILED at 488.
Hunk #5 FAILED at 498.
5 out of 5 hunks FAILED -- saving rejects to file src/gif2swf.c.rej
#------------
and make ends like so:-
#-----------------------
gif2swf.c: In function 'MovieAddFrame':
gif2swf.c:233:5: error: too few arguments to function 'DGifOpenFileName'
if ((gft = DGifOpenFileName(sname)) == NULL) {
^
In file included from gif2swf.c:28:0:
/usr/include/gif_lib.h:177:14: note: declared here
GifFileType *DGifOpenFileName(const char *GifFileName, int *Error);
^
gif2swf.c:239:9: warning: implicit declaration of function 'PrintGifError' [-
Wimplicit-function-declaration]
PrintGifError();
^
gif2swf.c: In function 'CheckInputFile':
gif2swf.c:491:5: error: too few arguments to function 'DGifOpenFileName'
if ((gft = DGifOpenFileName(s)) == NULL) {
^
In file included from gif2swf.c:28:0:
/usr/include/gif_lib.h:177:14: note: declared here
GifFileType *DGifOpenFileName(const char *GifFileName, int *Error);
#-----------------------
It looks like giflib 5 expects an extra *int parameter to the
DGifOpenFilename call - try the attached, copy to your 'sources'
directory, and run 'patch -Np1 -i ../swftools-0.9.2.patch' from the
'swftools-0.9.2' directory (as per usual).
If that works, then do what I've done here if you get errors with any
other files - in fact, a quick grep suggests that DGifOpenFilename is
only used in gif2swf.c
David
--- a/src/gif2swf.c 2011-01-02 03:30:29.000000000 +0000
+++ b/src/gif2swf.c 2013-08-25 11:24:23.000000000 +0000
@@ -219,6 +219,7 @@
U16 delay, depth;
int disposal;
char *as_lastframe;
+ int errcode;
GifFileType *gft;
FILE *fi;
@@ -230,7 +231,7 @@
}
fclose(fi);
- if ((gft = DGifOpenFileName(sname)) == NULL) {
+ if ((gft = DGifOpenFileName(sname),&errcode) == NULL) {
fprintf(stderr, "%s is not a GIF file!\n", sname);
return t;
}
@@ -465,6 +466,7 @@
FILE *fi;
char *s = malloc(strlen(fname) + 5);
GifFileType *gft;
+ int errcode;
if (!s)
exit(2);
@@ -488,7 +490,7 @@
}
fclose(fi);
- if ((gft = DGifOpenFileName(s)) == NULL) {
+ if ((gft = DGifOpenFileName(s),&errcode) == NULL) {
fprintf(stderr, "%s is not a GIF file!\n", fname);
return -1;
}
--
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page