we get much futher now when building ntdll on cygwin. when linking I am getting the following error
ntdll.exp(.edata+0xe4c):fake: undefined reference to `NTDLL_alloca_probe@0' ntdll.exp(.edata+0xe5c):fake: undefined reference to `NTDLL_chkstk@0'
there are some other warnings but this is the only major thing with ntdll.
Thanks Steven
Steven Edwards Steven_Ed4153@yahoo.com writes:
we get much futher now when building ntdll on cygwin. when linking I am getting the following error
ntdll.exp(.edata+0xe4c):fake: undefined reference to `NTDLL_alloca_probe@0' ntdll.exp(.edata+0xe5c):fake: undefined reference to `NTDLL_chkstk@0'
there are some other warnings but this is the only major thing with ntdll.
This should fix it:
Index: tools/winebuild/spec32.c =================================================================== RCS file: /opt/cvs-commit/wine/tools/winebuild/spec32.c,v retrieving revision 1.52 diff -u -r1.52 spec32.c --- tools/winebuild/spec32.c 15 Aug 2002 23:21:03 -0000 1.52 +++ tools/winebuild/spec32.c 9 Oct 2002 19:19:04 -0000 @@ -863,7 +863,7 @@ ORDDEF *odp = EntryPoints[i];
if (!odp) continue; - if (odp->flags & FLAG_NOIMPORT) continue; + if (odp->flags & (FLAG_NOIMPORT|FLAG_REGISTER)) continue; if (odp->type == TYPE_STUB) continue;
if (odp->name) name = odp->name;
I've been trying to build ntdll and various other dlls (I'm actually interested in gdi and x11drv) for cygwin as well. I tried building ntdll with the latest CVS which includes Alexandre's patch from below. However I still get lots of errors saying variable '_wine_ldt_copy' can't be auto-imported. Please read the ld --enable-auto-import docs for details There are a few recommendations in the ld man page about how to avoid this; either by declaring the variable as __declspec(dllimport) or using a pointer to it instead. Has anyone else solved this problem, as I don't want to go through lots of the code doing something someone else has done? Or am I missing the point?
David Fraser
Alexandre Julliard wrote:
Steven Edwards Steven_Ed4153@yahoo.com writes:
we get much futher now when building ntdll on cygwin. when linking I am getting the following error
ntdll.exp(.edata+0xe4c):fake: undefined reference to `NTDLL_alloca_probe@0' ntdll.exp(.edata+0xe5c):fake: undefined reference to `NTDLL_chkstk@0'
there are some other warnings but this is the only major thing with ntdll.
This should fix it:
Index: tools/winebuild/spec32.c
RCS file: /opt/cvs-commit/wine/tools/winebuild/spec32.c,v retrieving revision 1.52 diff -u -r1.52 spec32.c --- tools/winebuild/spec32.c 15 Aug 2002 23:21:03 -0000 1.52 +++ tools/winebuild/spec32.c 9 Oct 2002 19:19:04 -0000 @@ -863,7 +863,7 @@ ORDDEF *odp = EntryPoints[i];
if (!odp) continue;
if (odp->flags & FLAG_NOIMPORT) continue;
if (odp->flags & (FLAG_NOIMPORT|FLAG_REGISTER)) continue; if (odp->type == TYPE_STUB) continue; if (odp->name) name = odp->name;
David Fraser wrote:
I've been trying to build ntdll and various other dlls (I'm actually interested in gdi and x11drv) for cygwin as well. I tried building ntdll with the latest CVS which includes Alexandre's patch from below. However I still get lots of errors saying variable '_wine_ldt_copy' can't be auto-imported. Please read the ld --enable-auto-import docs for details There are a few recommendations in the ld man page about how to avoid this; either by declaring the variable as __declspec(dllimport) or using a pointer to it instead. Has anyone else solved this problem, as I don't want to go through lots of the code doing something someone else has done? Or am I missing the point?
I do not have X installed with my current Cygwin so I cant help with x11drv and gdi atm. This problem with --enable-auto-import goes away in ntdll when doing "./configure--disable-win16" with the latest cvs (Thanks Alexandre). If I can get time to get X reinstalled under Cygwin I will give gdi and x11drv a shot tonight.
Thanks Steven
Steven Edwards wrote:
David Fraser wrote:
I've been trying to build ntdll and various other dlls (I'm actually interested in gdi and x11drv) for cygwin as well. I tried building ntdll with the latest CVS which includes Alexandre's patch from below. However I still get lots of errors saying variable '_wine_ldt_copy' can't be auto-imported. Please read the ld --enable-auto-import docs for details There are a few recommendations in the ld man page about how to avoid this; either by declaring the variable as __declspec(dllimport) or using a pointer to it instead. Has anyone else solved this problem, as I don't want to go through lots of the code doing something someone else has done? Or am I missing the point?
I do not have X installed with my current Cygwin so I cant help with x11drv and gdi atm. This problem with --enable-auto-import goes away in ntdll when doing "./configure--disable-win16" with the latest cvs (Thanks Alexandre). If I can get time to get X reinstalled under Cygwin I will give gdi and x11drv a shot tonight.
Thanks Steven
Funny, I still get the --enable-auto-import problem with ./configure --disable-win16 with the latest CVS. I've even tried ./configure --disable-win16 --with-x=no to make sure it wasn't X that was producing the problem I did a make clean and make distclean before updating CVS and running configure and make so I can't see why a patch that fixes it for you doesn't fix it for me... I'm using the latest cygwin gcc 3.2 (20020818) so maybe this is the problem? Are you using gcc 2.96 still? I'm just trying compiling under mingw to see if I get any different results...
By the way the reason for gdi and x11drv is an idea that came up on the cygwin-xfree86 mailing list that led to a project called XOpenWin (http://sources.redhat.com/XOpenWin) Basically it's still very investigative but the idea is that if we could port the Wine x11drv to cygwin, we could make standard Windows GDI applications run in X Windows under cygwin. This leads to a whole lot of very interesting possibilities... I've got all the source for x11drv compiling under cygwin, but linking is a problem. However in order to get it to actually work it would probably mean extracting a lot of the wine stuff out (for that reason the code in the XOpenWin CVS doesn't compile at all as it's heading in that direction) I'm sure this project would be interesting both to ReactOS and to other people in the wine-dev mailing list so that's why I mention it here (I was waiting until we got stuff compiling)...
Thanks for the help... David
I will try to do more testing tommrow. It seem mirrors.rcn.net's Xfree Package is hosed atm and i am short on time
Funny, I still get the --enable-auto-import problem with ./configure --disable-win16 with the latest CVS. I've even tried ./configure --disable-win16 --with-x=no to make sure it wasn't X that was producing the problem I did a make clean and make distclean before updating CVS and running configure and make so I can't see why a patch that fixes it for you doesn't fix it for me... I'm using the latest cygwin gcc 3.2 (20020818) so maybe this is the problem? Are you using gcc 2.96 still? I'm just trying compiling under mingw to see if I get any different results...
You might be interested in this if you want to add remote X11 support to a Windows Desktop. Take a look at http://xwinx.sourceforge.net
Getting X11Drv and gdi going might not be to hard but if you guys ever want to get Wineserver going, cygwin still needs to implement send/recv msg. I am glad that others are interested in this so I would love to help any way I can.
By the way the reason for gdi and x11drv is an idea that came up on the cygwin-xfree86 mailing list that led to a project called XOpenWin (http://sources.redhat.com/XOpenWin) Basically it's still very investigative but the idea is that if we could port the Wine x11drv to cygwin, we could make standard Windows GDI applications run in X Windows under cygwin. This leads to a whole lot of very interesting possibilities... I've got all the source for x11drv compiling under cygwin, but linking is a problem. However in order to get it to actually work it would probably mean extracting a lot of the wine stuff out (for that reason the code in the XOpenWin CVS doesn't compile at all as it's heading in that direction) I'm sure this project would be interesting both to ReactOS and to other people in the wine-dev mailing list so that's why I mention it here (I was waiting until we got stuff compiling)...
"Steven Edwards" Steven_Ed4153@yahoo.com wrote:
Getting X11Drv and gdi going might not be to hard but if you guys ever want to get Wineserver going, cygwin still needs to implement send/recv msg. I am glad that others are interested in this so I would love to help any way I can.
sendmsg/recvmsg are implemented in cygwin. What is missing, is a support for file descriptor passing using this interface.