Subject: Re: cygwin on wine
From: Uwe Bonnes <[email-masked]>
To: Peter Dufault <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Mon, 6 Mar 2000 10:28:47 +0100 (MET)

Peter Dufault writes:
> > It is easy to verify that cygwin tools like "sh" do not run on Wine.
> > Here is the output:
> > 
> > > wine "sh -c 'ls; sleep 20'"
> > err:win32:fixup_imports No implementation for KERNEL32.dll.622(SetTapeParameters), setting to 0xdeadbeef
It seems it will be enough to stub this function. I will do and send a 
patch for the wine CVS tree.

> > fixme:console:SetConsoleCtrlHandler (0x6100af50,0) - no error checking or testing yet
> > fixme:console:SetConsoleCtrlHandler (0x6100af50,1) - no error checking or testing yet
> > fixme:security:LookupAccountSidA ((null),sid=0x61085704,0x42defbcc,0x42defbc8(20),0x42defb4c,0x42defb48(100),0x42defb44): semi-stub
> > ls: not foundConsole: Making console complex (creating an xterm)...
> > zsh: terminated  wine "sh -c 'ls; sleep 20'"
> > 
> > An xterm flashes quickly on the screen and then disappears.

Have to look for it.
...
> This is useful. I want to test programs targetted for a Windows
> box on an open source system, and this setup lets me it without
> any MS software at all.  I don't have a single Windows box in
> the office.  However, any program that needs to exec (see
> below) will fail and so you can't run shells and debuggers.
> 
This is what I ment by "missing process separetion". It seems that the 
programs you use are stipped of their relocation information and at
the present time Wine can't load another program at the same place, so 
the relocation info is needed.

> The issues are primarily with Wine, in that some of the tricks that
> Cygwin uses aren't that important in many Windows programs and so
> aren't implemented in Wine.
> 
> The first problem you'll find is that Cygwin's method of determining
> what is at the other end of a file descriptor isn't handled cleanly
> by Wine, resulting in opening /etc/passwd as a terminal.
> 
> I hacked Wine up enough so that that worked, I can provide the
> patches (I'm not proud).  This will let you run most any Cygwin
> program that doesn't try to exec.  This is enough to test the
> programs you build, UNTIL you get to programs that fail only in
> WIN32 (as I have had recently).  So now I want more of Cygwin
> working so that I can run gdb under Cygwin.
> 
There is work going on with getting native debuggers to run in
wine. The changes aren't in CVS yet

> This brings out that Wine can't handle programs without a RELOC
> section.  I puzzled that out last week and built a shell with a
> RELOC section that sort of worked, but there are still issues
> similar to the first one I mentioned that keep it from working
> fully.  The "sh -c ls" example will work, though.
> 
Please report your patches (hacks) and findings on the
[email-masked] list.

> It is all very solvable for someone who wants
> it to work and has the time.  I'm going to continue doing this
> at a low level as time permits (unless someone wants to fund me).
> 

Bye

Uwe Bonnes                [email-masked]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------

--
Want to unsubscribe from this list?
Send a message to [email-masked]