I found a cygwin specific problem, see also http://cygwin.com/ml/cygwin/2008-08/msg00308.html http://cygwin.com/ml/cygwin/2008-08/msg00309.html
There seems to be a problem with autoconf generated scripts when running the resulting configure on a text mount. I came across this when trying to compile lame: checking for int64_t... yes configure: error: CHECK_TYPE_uint32_t - please report to lame-dev <at> lists.sourceforge.net I tracked this down to this line in configure: FILE *f = fopen ("conftest.val", "w") If I change all occurrences to FILE *f = fopen ("conftest.val", "wb") the configure and build succeeds. I am not familar enough with autoconf to be able to tell how that line gets into configure. I can't find it in configure.in. All I can see is stuff like AH_VERBATIM([HAVE_UINT64_T] and AC_CHECK_TYPES([uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, uint64_t, int64_t]); I'd guess it is releated to the latter. The contents of conftest.val are used later like ac_cv_sizeof_unsigned_int=`cat conftest.val` which adds a \r to the assignment causing later tests like if test "${ac_cv_sizeof_unsigned_int}" = "4"; then ... to fail. Running autoconf on cygwin results in the same broken configure script. Any ideas what should be done other than not using a text mount? To me opening the conftest.val file as text is wrong. Michael