On 05/10/13 11:11, xunxun wrote: > 于 2013/5/9 星期四 10:40, xunxun 写道: >> 于 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 >> >> >> > How do you think? > > Can we do that workaround change before a better detect method?
Yes, the patch looks good to me, thanks. But this needs Kai's approval. Thanks, Jacek ------------------------------------------------------------------------------ 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