Quite a while ago when I first started using cegcc I ran into a problem 
when using cegcc-compiled DLLs with microsoft-compiled executables:

> > My workaround was to add a call to _initstdio() in a special init
> > function in my DLL that I call before I make any other calls to the 
> DLL.
> > Now everything seems to work OK.
>
> To be safe, you should call (untested):
> __init_c__(); /* and then */
> __initstdio();
>
> > Can someone tell me if that is a reasonable workaround? Also, am I 
> right
> > in thinking that this problem is already fixed now in SVN? (I've been
> > using the cygwin v0.1.0 version).
>
> Yes, this should be fixed in svn.
>
> Cheers,
> Pedro Alves

Just to let you know, it seems that this is still a problem in versions 
0.50 and 0.51 (the cegcc-cegcc versions), i.e. you still need to call 
_initstdio() if you want any file access to work at all. The behaviour 
is a bit different in that instead of getting stuck and using lots of 
CPU it just fails to read or write any data (but that could be a 
difference in my program). Again, if I call _initstdio() before I use 
any of the DLL functions then everything works perfectly.

Using the DLL from a cegcc exe is also fine (without calling 
_initstdio(), presumably because the exe itself sets all this up.

Hywel.



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to