On Tuesday 28 April 2020 22:02:35 Liu Hao wrote:
> 在 2020/4/28 15:21, Pali Rohár 写道:
> > Trying to link application with msvcr80.dll instead of msvcrt.dll (e.g. by
> > replacing -lmsvcrt by -lmsvcr80 in gcc spec file) results in following
> > linker error:
> > 
> > .../lib/crt2.o: in function `_tmainCRTStartup':
> > .../mingw-w64-crt/crt/crtexe.c:290: undefined reference to 
> > `_set_invalid_parameter_handler'
> > .../lib/libmingwex.a(lib32_libmingwex_a-mingw_vfprintf.o): in function 
> > `_mingw_vfprintf':
> > .../mingw-w64-crt/stdio/mingw_vfprintf.c:53: undefined reference to 
> > `_lock_file'
> > .../mingw-w64-crt/stdio/mingw_vfprintf.c:55: undefined reference to 
> > `_unlock_file'
> > 
> > It is because msvcr80.dll does not implement following functions which are
> > required for mingw printf implementations: _set_invalid_parameter_handler,
> > _lock_file, _unlock_file.
> > 
> 
> On my Windows machine I can find these functions in MSVC80.DLL, but they
> do not exist in our DEFs. Perhaps they should be added there for import.
> 
> Would you please check whether they exist in DLLs in your system?

They really exist in my tested msvcr80.dll file!

I thought that if symbols are missing in mingw def files then functions
are unimplemented. But it looks like that problem is in mingw def files
and rather def file should be fixed. Would you do it?

-- 
Pali Rohár
pali.ro...@gmail.com


_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to