[Mono-winforms-list] Winelib update.

Miguel de Icaza miguel@ximian.com
26 Jan 2003 14:53:36 -0500


Hello everyone,

   I just wanted to get everyone on the same page about the issues that
we face right now with the Wine-based implementation of Windows.Forms.

   In the past we *thought* that the problem was Wine interacting badly
with the GC.  This is not the case.  We tracked this down to a different
problem.  It turns out that Wine has its own pthreads implementation
that provides them with some control that is required by the Win32 api.

   So linking an application with both -lpthread and -lwine is a recipe
for disaster.  That is where the GC problems happened.  By turning off
the GC, we were able to "mask" the problem, but the problem was still
there.

   Now, if you remove the -lpthread a few symbols remain unresolved: a
few of the semaphore api calls.  The way of solving this is to either
copy/paste the semaphore api calls into the Wine runtime (someone should
send a patch to these guys), or we could put those missing api calls in
our stub program as a quick workaround.

    I discussed this with Dennis on email, but I should have posted to
the public to let everyone know. 

Miguel.