[MPlayer-cygwin] compilation problems (etc/inttypes.h clashes with /usr/include/sys/types.h)
Diego Biurrun
diego at biurrun.de
Mon Nov 11 13:06:00 CET 2002
Hi!
I just reinstalled Cygwin afresh and gave MPlayer a new try. I
eventually got it to compile, but I had to tweak my system configuration
a bit.
After copying etc/inttypes.h to /usr/include/inttypes.h configure
complains about conflicting type definitions:
Administrator at SILVER ~/main
$ ./configure --disable-mpdvdkit --disable-win32 --disable-gl
--disable-ossaudi
o --disable-tv --disable-streaming
Detected operating system: CYGWIN
Detected host architecture: i386
Checking for gcc version ... 3.2, ok
In file included from TOOLS/cpuinfo.c:9:
/usr/include/inttypes.h:9: conflicting types for `int8_t'
/usr/include/sys/types.h:135: previous declaration of `int8_t'
/usr/include/inttypes.h:11: conflicting types for `int32_t'
/usr/include/sys/types.h:139: previous declaration of `int32_t'
I first tried to resolve this by commenting out the int8_t and int32_t
definitions in /usr/include/inttypes.h (from the MPlayer source tree),
but compilation would eventually fail. Next I commented out the int8_t
and int32_t definitions in /usr/include/sys/types.h, like this:
#ifdef __MS_types__
typedef unsigned long vm_offset_t;
typedef unsigned long vm_size_t;
#define __BIT_TYPES_DEFINED__
// typedef char int8_t;
typedef unsigned char u_int8_t;
typedef short int16_t;
typedef unsigned short u_int16_t;
// typedef int int32_t;
typedef unsigned int u_int32_t;
typedef long long int64_t;
typedef unsigned long long u_int64_t;
// typedef int32_t register_t;
#endif /* __MS_types__ */
And lo and behold, MPlayer compiles and runs..
(today's Cygwin, gcc 3.2)
Did anybody else have this problem? Is there a cleaner solution for
this? And what is the real problem, I don't really know what I did there..
Diego
More information about the MPlayer-cygwin
mailing list