Hello,
I wanted to try netscape 8 but it's bugging about gif support being unavailable; so I got the gif library - but now wine won't recompile:
... make[2]: Entering directory `/home/jorishuizer/.wine-source/wine/dlls/oleaut32' gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_OLEAUT32_ -DCOM_NO_WINDOWS_H -D_REENTRANT -fPIC -Wall -pipe -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith -g -O2 -o olepicture.o olepicture.c olepicture.c:938: error: `DGifOpen' undeclared here (not in a function) olepicture.c:938: warning: type defaults to `int' in declaration of `pDGifOpen' olepicture.c: In function `_gif_inputfunc': olepicture.c:970: error: structure has no member named `UserData' olepicture.c: In function `OLEPictureImpl_Load': olepicture.c:1080: error: called object is not a function olepicture.c:1110: error: structure has no member named `Function' make[2]: *** [olepicture.o] Error 1 make[2]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls/oleaut32' make[1]: *** [oleaut32] Error 2 make[1]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls' make: *** [dlls] Error 2
I think this is related to the configure change...
please help, thanks,
Joris
On Thu, 19 May 2005 22:46:26 +0200, you wrote:
olepicture.c:938: error: `DGifOpen' undeclared here (not in a function) olepicture.c:938: warning: type defaults to `int' in declaration of `pDGifOpen' olepicture.c: In function `_gif_inputfunc': olepicture.c:970: error: structure has no member named `UserData' olepicture.c: In function `OLEPictureImpl_Load': olepicture.c:1080: error: called object is not a function olepicture.c:1110: error: structure has no member named `Function' make[2]: *** [olepicture.o] Error 1 make[2]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls/oleaut32' make[1]: *** [oleaut32] Error 2 make[1]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls' make: *** [dlls] Error 2
I think this is related to the configure change...
Not all gif lib's work. You don't say what distro you are using, but on Debian you should use libungif4-dev and not giflib3g-dev.
Rein.
Rein Klazes wrote:
On Thu, 19 May 2005 22:46:26 +0200, you wrote:
olepicture.c:938: error: `DGifOpen' undeclared here (not in a function) olepicture.c:938: warning: type defaults to `int' in declaration of `pDGifOpen' olepicture.c: In function `_gif_inputfunc': olepicture.c:970: error: structure has no member named `UserData' olepicture.c: In function `OLEPictureImpl_Load': olepicture.c:1080: error: called object is not a function olepicture.c:1110: error: structure has no member named `Function' make[2]: *** [olepicture.o] Error 1 make[2]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls/oleaut32' make[1]: *** [oleaut32] Error 2 make[1]: Leaving directory `/home/jorishuizer/.wine-source/wine/dlls' make: *** [dlls] Error 2
I think this is related to the configure change...
Not all gif lib's work. You don't say what distro you are using, but on Debian you should use libungif4-dev and not giflib3g-dev.
Rein.
Thanks, that solved the problem; Would it be possible to make configure warn about the gif library (and disable using it) when it's the wrong library version? Just an idea (no I don't have any experience with hacking configure scripts)
regards,
Joris
On Fri, 20 May 2005 13:11:47 +0200, you wrote:
Thanks, that solved the problem; Would it be possible to make configure warn about the gif library (and disable using it) when it's the wrong library version? Just an idea (no I don't have any experience with hacking configure scripts)
You need to modify configure.ac and then run autoconf to create a new configure script. I have done it a few times, and had to re-learn how it works each time. As usual, looking for similar features as the one you want to add and then take that as an example is a good idea.
Rein.
Rein Klazes wrote:
On Fri, 20 May 2005 13:11:47 +0200, you wrote:
Thanks, that solved the problem; Would it be possible to make configure warn about the gif library (and disable using it) when it's the wrong library version? Just an idea (no I don't have any experience with hacking configure scripts)
You need to modify configure.ac and then run autoconf to create a new configure script. I have done it a few times, and had to re-learn how it works each time. As usual, looking for similar features as the one you want to add and then take that as an example is a good idea.
Rein.
Hmm, this seems weird, I looked into the config.log after running configure, but the tests for libgif already do fail when using the wrong library version (DGifOpen (); is missing; it reads:
configure:15519: checking for -lungif soname configure:15549: gcc -o conftest -g -O2 conftest.c -lungif >&5 /tmp/ccie7Kbp.o(.text+0xa): In function `main': /home/jorishuizer/.wine-source/wine/conftest.c:176: undefined reference to `DGifOpen' collect2: ld returned 1 exit status configure:15555: $? = 1 configure: failed program was: ... configure:15584: result: libungif.so configure:15593: checking for -lgif soname configure:15623: gcc -o conftest -g -O2 conftest.c -lgif >&5 /tmp/ccQ16DCc.o(.text+0xa): In function `main': /home/jorishuizer/.wine-source/wine/conftest.c:177: undefined reference to `DGifOpen' collect2: ld returned 1 exit status configure:15629: $? = 1 configure: failed program was: ... configure:15658: result: libgif.so
in fact this shows configure ignores the link error and assignes libungif.so as correct libraby :-/
the configure.ac script already does
WINE_GET_SONAME(ungif,DGifOpen) WINE_GET_SONAME(gif,DGifOpen)
which means checking for this failing function DGifOpen() if I understand this correctly
Hmm, this seems weird, I looked into the config.log after running configure, but the tests for libgif already do fail when using the wrong library version (DGifOpen (); is missing; it reads:
configure:15519: checking for -lungif soname configure:15549: gcc -o conftest -g -O2 conftest.c -lungif >&5 /tmp/ccie7Kbp.o(.text+0xa): In function `main': /home/jorishuizer/.wine-source/wine/conftest.c:176: undefined reference to `DGifOpen' collect2: ld returned 1 exit status configure:15555: $? = 1 configure: failed program was: ... configure:15584: result: libungif.so
This is a result of the dynamically loaded libungif.so / libgif.so, it expects that it has this symbol.
So exactly what distro has this problem, all modern ones should not have it.
Ciao, Marcus
Marcus Meissner wrote:
Hmm, this seems weird, I looked into the config.log after running configure, but the tests for libgif already do fail when using the wrong library version (DGifOpen (); is missing; it reads:
configure:15519: checking for -lungif soname configure:15549: gcc -o conftest -g -O2 conftest.c -lungif >&5 /tmp/ccie7Kbp.o(.text+0xa): In function `main': /home/jorishuizer/.wine-source/wine/conftest.c:176: undefined reference to `DGifOpen' collect2: ld returned 1 exit status configure:15555: $? = 1 configure: failed program was: ... configure:15584: result: libungif.so
This is a result of the dynamically loaded libungif.so / libgif.so, it expects that it has this symbol.
So exactly what distro has this problem, all modern ones should not have it.
Ciao, Marcus
This is debian, with the giflib3g-dev package; with the libungif4-dev package the problem is gone, but I was trying what was wrong with configure in that it didn't detect this (I proposed configure could ensure gif library would only be enabled when the correct library was installed); I have no idea why configure ignores this error?
HTH,
Joris