setup in cvs head by early june 2013 does not run on xp

Corinna Vinschen
Wed Jun 26 12:47:00 GMT 2013

On Jun 26 08:46, wrote:
> >
> > Please verify that you actually have mingw64-i686 installed. Telling us
> > what you have done doesn't really help. We need to know what's on your
> > system.
> >
> >
> I do not see any single mingw64-i686 package...
> [...]

I could reproduce the problem.  Chris and I are usually cross building
our stuff from Linux.

The Linux->mingw-w64 on both of our machines are apparently newer then
the current mingw-w64 headers in the Cygwin->mingw-w64 cross toolchain.
Therefore, we both didn't see this problem.

The vswprintf problem is a result of a bug in Mingw-w64's stdio.h when
using C++.  If you include stdio.h before any other of the usual C++
headers,  You get the vswprintf symbol as normal exported symbol from
some Windows DLL.  If you include the C++ headers first, vswprintf
is redirected to _mingw_vswprintf from libmingex.a.  This bug is fixed
upstream and in my Fedora 18 cross toolchain, so the problem can only be
reproduced when building setup under Cygwin with it's older set of
mingw-w64 headers.

I worked around our older mingw-w64 toolchain in setup by changing the
inclusion order in the affected source file.  This makes sure that stdio.h
is only included after the usual C++ suspects.

Sorry for the slowness in this matter.  I only suspected a difference
in the toolchains because you persisted.

Thanks for the report,

Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

More information about the Cygwin-apps mailing list