GNOME Bugzilla – Bug 122220
Building with MinGW fails in gap-decode-xanim.c
Last modified: 2004-12-22 21:47:04 UTC
Tried to build with MinGW on Win32. The result: if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../libwavplayclient -I/c/temp/gimp1.3/include/gimp-1.3 -Ic:/usr/src/include/gtk-2.0 -Ic:/usr/src/lib/gtk-2.0/include -Ic:/usr/src/include/atk-1.0 -Ic:/usr/src/include/pango-1.0 -Ic:/usr/src/include/glib-2.0 -Ic:/usr/src/lib/glib-2.0/include -I/usr/local/include -DGAP_DISABLE_WAV_AUDIOSUPPORT -DLOCALEDIR=\""/usr/local/lib/locale"\" -Ic:/usr/src/include -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -Ic:/usr/src/include -Wall -MT gap_decode_xanim.o -MD -MP -MF ".deps/gap_decode_xanim.Tpo" \ -c -o gap_decode_xanim.o `test -f 'gap_decode_xanim.c' || echo './'`gap_decode_xanim.c; \ then mv ".deps/gap_decode_xanim.Tpo" ".deps/gap_decode_xanim.Po"; \ else rm -f ".deps/gap_decode_xanim.Tpo"; exit 1; \ fi gap_decode_xanim.c: In function `p_poll': gap_decode_xanim.c:684: warning: implicit declaration of function `kill' gap_decode_xanim.c:686: warning: implicit declaration of function `usleep' gap_decode_xanim.c: In function `p_start_xanim_process': gap_decode_xanim.c:889: `S_IRWXG' undeclared (first use in this function) gap_decode_xanim.c:889: (Each undeclared identifier is reported only once gap_decode_xanim.c:889: for each function it appears in.) gap_decode_xanim.c:889: `S_IROTH' undeclared (first use in this function) gap_decode_xanim.c:889: `S_IXOTH' undeclared (first use in this function) gap_decode_xanim.c: In function `gap_xanim_decode': gap_decode_xanim.c:1105: `S_IRWXG' undeclared (first use in this function) gap_decode_xanim.c:1105: `S_IROTH' undeclared (first use in this function) gap_decode_xanim.c:1105: `S_IXOTH' undeclared (first use in this function) gap_decode_xanim.c:1105: too many arguments to function `mkdir' gap_decode_xanim.c:1184: too many arguments to function `mkdir' make[2]: *** [gap_decode_xanim.o] Error 1 make[2]: Leaving directory `/c/usr/compile/gimp-gap/gap' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/c/usr/compile/gimp-gap' make: *** [all] Error 2
The gimp-gap frontend code for xanim and the mpeg_encoders requires UNIX Environment. It would not run on WINDOWS even if compile would be successful. I'll change the Code and Makefiles in a way that those parts will not be compiled on WINDOWS any longer, with the hope that the other parts of gimp-gap will be built properly on WINDOWS. (I can't verify, my Development Environment is LINUX only)
I added the configure option --disable-unix-frontends that should be used for WIN32 builds. (call autogen.sh --disable-unix-frontends) I also changed gap_decode_xanim.c to use the WIN32 variante of mkdir. It should at least compile on windows even with unix-frontends enabled. This is untested, my development system is linux only, but should be working with CVS version 2003.09.16 (The unix-frontends are useless on Windows and will not run) Please let me know about the gimp-gap build on Windows, even if it works fine.
I used autogen.sh -C --disable-audiosupport --disable-unix-frontends and got the following: make[2]: Entering directory `/c/usr/compile/gimp-gap-cvs/libwavplayclient' if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I/c/temp/gimp1.3/include/gimp-1.3 -Ic:/usr/src/include/gtk-2.0 -Ic:/usr/src/lib/gtk-2.0/include -Ic:/usr/src/include/atk-1.0 -Ic:/usr/src/include/pango-1.0 -Ic:/usr/src/include/glib-2.0 -Ic:/usr/src/lib/glib-2.0/include -I/usr/local/include -Ic:/usr/src/include -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -Ic:/usr/src/include -Wall -MT wpc_client.o -MD -MP -MF ".deps/wpc_client.Tpo" \ -c -o wpc_client.o `test -f 'wpc_client.c' || echo './'`wpc_client.c; \ then mv ".deps/wpc_client.Tpo" ".deps/wpc_client.Po"; \ else rm -f ".deps/wpc_client.Tpo"; exit 1; \ fi In file included from wpc_client.c:3: client.c:56:21: sys/ipc.h: No such file or directory client.c:57:21: sys/msg.h: No such file or directory client.c:58:22: sys/wait.h: No such file or directory client.c:61:29: linux/soundcard.h: No such file or directory In file included from client.c:65, from wpc_client.c:3: wavplay.h:64:21: sys/ipc.h: No such file or directory In file included from wavplay.h:84, from client.c:65, from wpc_client.c:3: wavfile.h:43: parse error before "u_long" wavfile.h:44: parse error before "u_long" In file included from client.c:65, from wpc_client.c:3: wavplay.h:219: parse error before "key_t" wavplay.h:219: warning: no semicolon at end of struct or union wavplay.h:232: parse error before '}' token wavplay.h:232: warning: type defaults to `int' in declaration of `WavPlayOpts' wavplay.h:232: warning: data definition has no type or storage class wavplay.h:497: parse error before "LockIPCKey" wavplay.h:503: parse error before "WavPlayOpts" wavplay.h:511: parse error before '*' token wavplay.h:512: parse error before '*' token wavplay.h:513: parse error before '*' token In file included from wpc_client.c:3: client.c: In function `close_msgq': client.c:98: warning: implicit declaration of function `kill' client.c:107: warning: implicit declaration of function `waitpid' client.c:107: `WNOHANG' undeclared (first use in this function) client.c:107: (Each undeclared identifier is reported only once client.c:107: for each function it appears in.) client.c:112: warning: implicit declaration of function `sleep' client.c: In function `tosvr_start': client.c:151: warning: implicit declaration of function `fork' client.c:176: `IPC_NOWAIT' undeclared (first use in this function) client.c:185: `WNOHANG' undeclared (first use in this function) make[2]: *** [wpc_client.o] Error 1 make[2]: Leaving directory `/c/usr/compile/gimp-gap-cvs/libwavplayclient' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/c/usr/compile/gimp-gap-cvs' make: *** [all] Error 2
This change I just commited should fix it: 2003-09-22 Sven Neumann <sven@gimp.org> * configure.in: redone the checks for audio support and build of unix frontends. Moved the output to the end and introduced automake conditionals. * gap/Makefile.am * gap/gap_player_dialog.c: changed accordingly. * Makefile.am: build the libwavclient directory conditionally. * gap/gap_navigator_dialog.c (run): cannot use kill() on WIN32.
--disable-audiosupport should have been --disable-audio-support ;) Builds now and seems to work. Will open new reports for further bugs, if any.