于 2013/5/9 星期四 6:27, Jacek Caban 写道:
On 5/8/13 7:27 AM, xunxun wrote:
于 2013/1/21 星期一 21:07, Kai Tietz 写道:
2013/1/21 Jacek Caban <ja...@codeweavers.com>:
On 01/21/13 13:39, JonY wrote:
On 1/21/2013 09:43, Herb Thompson wrote:
Q: Why do some 32-bit MinGW-w64 applications fail with '... _vswprintf could not be located in the dynamic link library msvcrt.dll' on Windows
XP SP1?

A: For C++, MinGW-w64 implements 'vswprintf (wchar_t *__stream, const
wchar_t *__format, __builtin_va_list __local_argv)' as a call to
'_vswprintf'. Older versions of msvcrt.dll, like the version in XP SP1, do not include '_vswprintf'. A workaround for this is to compile any C++ libraries and applications that use 'vswprintf' (with the preceding
signature) with -D__USE_MINGW_ANSI_STDIO.  For example, to build the
wxWidgets library for applications to be deployed on XP SP1, build
wxWidgets with the following command line:
> mingw32-make -f makefile.gcc CPPFLAGS="-D__USE_MINGW_ANSI_STDIO"
Done as
https://sourceforge.net/apps/trac/mingw-w64/wiki/_vswprintf%20missing.

Thanks.

I've also added a caveat section on the side effects of using
__USE_MINGW_ANSI_STDIO.
Well, IMO we should fix bugs instead of documenting them... I may look
at this, but I'm not sure when I will find time for that.

Jacek
Well, in general I agree.  We might should do same hack (for older
msvcrt versions) as we do for vscanf (as example).

Cheers,
Kai


Can we do _vswprintf == vswprintf again?

And XP SP3 msvcrt.dll doesn't contain _vswprint, too.
We must fix it!

I'm sorry, I forgot about this before I found the time to fix it. Can you prepare a patch?

Thanks,
Jacek
Same with vsnprintf

Index: mingw-w64-crt/lib32/msvcrt.def.in
===================================================================
--- mingw-w64-crt/lib32/msvcrt.def.in    (revision 5847)
+++ mingw-w64-crt/lib32/msvcrt.def.in    (working copy)
@@ -1116,7 +1116,7 @@
 _vsprintf_p
 _vsprintf_p_l
 _vsprintf_s_l
-_vswprintf
+_vswprintf == vswprintf
 _vswprintf_c
 _vswprintf_c_l
 _vswprintf_l



--
Best Regards,
xunxun

Index: mingw-w64-crt/lib32/msvcrt.def.in
===================================================================
--- mingw-w64-crt/lib32/msvcrt.def.in   (revision 5847)
+++ mingw-w64-crt/lib32/msvcrt.def.in   (working copy)
@@ -1116,7 +1116,7 @@
 _vsprintf_p
 _vsprintf_p_l
 _vsprintf_s_l
-_vswprintf
+_vswprintf == vswprintf
 _vswprintf_c
 _vswprintf_c_l
 _vswprintf_l
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to