Re: On cygwin, these programs fails because they lack __wargv definition. So adding -mno-cygwin flag tell winegcc to link them with msvcrt instead of libc
Alexandre Goujon <ale.goujon(a)gmail.com> writes:
--- programs/cmd/Makefile.in | 2 +- programs/dxdiag/Makefile.in | 2 +- programs/explorer/Makefile.in | 2 +- programs/extrac32/Makefile.in | 2 +- programs/mshta/Makefile.in | 2 +- programs/reg/Makefile.in | 2 +- programs/start/Makefile.in | 2 +- programs/svchost/Makefile.in | 2 +- programs/termsv/Makefile.in | 2 +- programs/uninstaller/Makefile.in | 2 +- programs/winebrowser/Makefile.in | 2 +- programs/winedevice/Makefile.in | 2 +- programs/winepath/Makefile.in | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-)
These apps don't link to msvcrt on purpose. If things are broken on cygwin that needs to be handled in winegcc, you shouldn't have to touch the makefiles. -- Alexandre Julliard julliard(a)winehq.org
Le 03/15/10 14:11, Alexandre Julliard a écrit :
Alexandre Goujon<ale.goujon(a)gmail.com> writes:
--- programs/cmd/Makefile.in | 2 +- programs/dxdiag/Makefile.in | 2 +- programs/explorer/Makefile.in | 2 +- programs/extrac32/Makefile.in | 2 +- programs/mshta/Makefile.in | 2 +- programs/reg/Makefile.in | 2 +- programs/start/Makefile.in | 2 +- programs/svchost/Makefile.in | 2 +- programs/termsv/Makefile.in | 2 +- programs/uninstaller/Makefile.in | 2 +- programs/winebrowser/Makefile.in | 2 +- programs/winedevice/Makefile.in | 2 +- programs/winepath/Makefile.in | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-)
These apps don't link to msvcrt on purpose. If things are broken on cygwin that needs to be handled in winegcc, you shouldn't have to touch the makefiles.
I agree these programs don't need any msvcrt function. However, building on Windows calls mingw_unicode_hack (winegcc.c l.546) 551 create_file( main_stub, 0644, 552 "#include <stdlib.h>\n" 553 "extern int wmain(int,wchar_t**);\n" 554 "int main( int argc, char *argv[] )\n{\n" 555 " return wmain( argc, __wargv );\n}\n" ); 556 return compile_to_object( opts, main_stub, NULL ); So __wargv definition is needed (do we need the whole msvcrt library ?). As you don't want to link these with msvcrt, I'm wondering if we can use something like mbsrtowcs. Thanks
GOUJON Alexandre <ale.goujon(a)gmail.com> writes:
I agree these programs don't need any msvcrt function. However, building on Windows calls mingw_unicode_hack (winegcc.c l.546) 551 create_file( main_stub, 0644, 552 "#include <stdlib.h>\n" 553 "extern int wmain(int,wchar_t**);\n" 554 "int main( int argc, char *argv[] )\n{\n" 555 " return wmain( argc, __wargv );\n}\n" ); 556 return compile_to_object( opts, main_stub, NULL );
So __wargv definition is needed (do we need the whole msvcrt library ?).
As you don't want to link these with msvcrt, I'm wondering if we can use something like mbsrtowcs.
You can link with msvcrt on cygwin, if that works. -- Alexandre Julliard julliard(a)winehq.org
participants (2)
-
Alexandre Julliard -
GOUJON Alexandre