Building OSProcess plugin on win32 fails

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Building OSProcess plugin on win32 fails

Igor Stasenko
 
I tried to build an OSProcess plugin on windoze,
with VMMaker
Name: VMMaker-dtl.186
Author: dtl
Time: 19 September 2010, 11:03:20 am
UUID: d2271d63-e922-47de-9bf7-161900f8e7d0
Ancestors: VMMaker-dtl.185

And it fails compiling, unable to reach FilePlugin and SocketPlugin headers..

make -C ./obj/Win32OSProcessPlugin -fMakefile.dll LIBNAME=Win32OSProcessPlugin \
        PLATDIR=../../../platforms BASEDIR=../../. \
        Win32OSProcessPlugin.dll
make[1]: Entering directory
`F:/projects/squeak/!trunk/src/winbuild/obj/Win32OSProcessPlugin'
gcc -o ../.././obj/Win32OSProcessPlugin/Win32OSProcessPlugin.o -g
-mpentium -mwindows -fomit-frame-pointer -funroll-loops
-fschedule-insns2 -O2 -I. -Ic:/dx7sdk/include -I../.././src/vm
-I../../../platforms/Win32/vm -I../../../platforms/Cross/vm
-I../.././src/Win32OSProcessPlugin
-I../../../platforms/Win32/plugins/Win32OSProcessPlugin
-I../../../platforms/Cross/plugins/Win32OSProcessPlugin
-DVM_VERSION=\""3.10.6 (release)"\" -DWIN32_FILE_SUPPORT -DNO_SERVICE
-DNO_STD_FILE_SUPPORT -DNDEBUG -DLSB_FIRST -DVM_NAME=\"\" -DX86  -c
../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c
../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:39:
FilePlugin.h: No such file or directory
../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:40:
SocketPlugin.h: No such file or directory
make[1]: *** [Win32OSProcessPlugin.o] Error 1
make[1]: Leaving directory
`F:/projects/squeak/!trunk/src/winbuild/obj/Win32OSProcessPlugin'
make: *** [Win32OSProcessPlugin.dll] Error 2


looks like something wrong with headers search path, and i need to
update/modify makefile(s).


--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: Building OSProcess plugin on win32 fails

David T. Lewis
 
You can either copy the two headers into the OSPP subdirectory, or
fix the makefile. OSPP needs both FilePlugin.h and SocketPlugin.h
from their respective subdirectories. I'm afraid I never put any
effort into fixing the makefile, so if you can share a makefile that
works properly, that would be great.

Also, be aware that the OSPP primitives related to OS pipes, stdio
handles, and (IIRC) console open/close will fail due the the file
handle registry. I usually just disable it in sqWin32HandleTable.h,
although I suspect this is not an approved procedure ;)

Andreas, I recall discussing the handle registration a few years
ago, but I don't think I ever followed up to do anything about it.
It would be good if we could have some mechanism such as
#primitiveRegisterHandle so that someone can e.g. get the two
handles for a new OSPipe and inform FilePlugin that they are
legitimate handles. Would you be willing to support a mechanism
like that?

Dave

On Wed, Oct 13, 2010 at 06:00:19PM +0300, Igor Stasenko wrote:

>  
> I tried to build an OSProcess plugin on windoze,
> with VMMaker
> Name: VMMaker-dtl.186
> Author: dtl
> Time: 19 September 2010, 11:03:20 am
> UUID: d2271d63-e922-47de-9bf7-161900f8e7d0
> Ancestors: VMMaker-dtl.185
>
> And it fails compiling, unable to reach FilePlugin and SocketPlugin headers..
>
> make -C ./obj/Win32OSProcessPlugin -fMakefile.dll LIBNAME=Win32OSProcessPlugin \
> PLATDIR=../../../platforms BASEDIR=../../. \
> Win32OSProcessPlugin.dll
> make[1]: Entering directory
> `F:/projects/squeak/!trunk/src/winbuild/obj/Win32OSProcessPlugin'
> gcc -o ../.././obj/Win32OSProcessPlugin/Win32OSProcessPlugin.o -g
> -mpentium -mwindows -fomit-frame-pointer -funroll-loops
> -fschedule-insns2 -O2 -I. -Ic:/dx7sdk/include -I../.././src/vm
> -I../../../platforms/Win32/vm -I../../../platforms/Cross/vm
> -I../.././src/Win32OSProcessPlugin
> -I../../../platforms/Win32/plugins/Win32OSProcessPlugin
> -I../../../platforms/Cross/plugins/Win32OSProcessPlugin
> -DVM_VERSION=\""3.10.6 (release)"\" -DWIN32_FILE_SUPPORT -DNO_SERVICE
> -DNO_STD_FILE_SUPPORT -DNDEBUG -DLSB_FIRST -DVM_NAME=\"\" -DX86  -c
> ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c
> ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:39:
> FilePlugin.h: No such file or directory
> ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:40:
> SocketPlugin.h: No such file or directory
> make[1]: *** [Win32OSProcessPlugin.o] Error 1
> make[1]: Leaving directory
> `F:/projects/squeak/!trunk/src/winbuild/obj/Win32OSProcessPlugin'
> make: *** [Win32OSProcessPlugin.dll] Error 2
>
>
> looks like something wrong with headers search path, and i need to
> update/modify makefile(s).
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.