All,
is there a source to download a precompiled OSProcessPlugin for Win32?
I'm currently getting compile errors trying to do it on my own: ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:39: FilePlugin.h: No such file or directory ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:40: SocketPlugin.h: No such file or directory
I'm not quite sure where to search as I don't undertand the Squeak Build system.
CU,
udo
On Sun, Jan 11, 2009 at 11:14:53PM +0100, Udo Schneider wrote:
All,
is there a source to download a precompiled OSProcessPlugin for Win32?
Sorry, no.
I'm currently getting compile errors trying to do it on my own: ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:39: FilePlugin.h: No such file or directory ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:40: SocketPlugin.h: No such file or directory
I'm not quite sure where to search as I don't undertand the Squeak Build system.
This is just a missing make file for the plugin, but the easiest way to work around it is to copy the the files platforms/win32/plugins/FilePlugin/FilePlugin.h and platforms/win32/plugins/SocketPlugin/SocketPlugin.h into a directory for OSProcessPlugin: platforms/win32/plugins/Win32OSProcessPlugin/FilePlugin.h platforms/win32/plugins/Win32OSProcessPlugin/SocketPlugin.h
One other thing you need to know: Some of the OSPP primitives will not work on Windows due to conflicts with the Windows implementation of FilePlugin. You can "fix" this by disabling the function IsHandleInTable() in the file platforms/win32/vm/sqWin32HandleTable.h (just edit it to return a 1). Obviously this would violate the intention of the FilePlugin implemention for Windows, so it is not suitable for distribution of a pre-compiled OSPP. But for your own personal use, I am not aware of any problems that result from disabling the sqWin32HandleTable.
Dave
On Sun, Jan 11, 2009 at 11:14:53PM +0100, Udo Schneider wrote:
All,
is there a source to download a precompiled OSProcessPlugin for Win32?
Sorry, no.
I'm currently getting compile errors trying to do it on my own: ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:39: FilePlugin.h: No such file or directory ../.././src/Win32OSProcessPlugin/Win32OSProcessPlugin.c:40: SocketPlugin.h: No such file or directory
I'm not quite sure where to search as I don't undertand the Squeak Build system.
The easiest work-around for this is just to copy these two files: platforms/Cross/plugins/FilePlugin/FilePlugin.h platforms/Cross/plugins/SocketPlugin/SocketPlugin.h
into a directory for the OSPP: platforms/win32/plugins/FilePlugin/FilePlugin.h platforms/win32/plugins/SocketPlugin/SocketPlugin.h
One other thing you need to know: For Windows, there is a security feature in FilePlugin that causes several of the OSProcessPlugin primitives to fail. You can "fix" this by disabling the security function. Edit the file platforms/win32/vm/sqWin32HandleTable.h and disable the function IsHandleInTable() by having it just return a 1. I assume that this will void the warranty on your Windows VM ;) but as far as I know it will cause no problems for your own personal use.
HTH, Dave
David T. Lewis wrote:
The easiest work-around for this is just to copy these two files: platforms/Cross/plugins/FilePlugin/FilePlugin.h platforms/Cross/plugins/SocketPlugin/SocketPlugin.h
into a directory for the OSPP: platforms/win32/plugins/FilePlugin/FilePlugin.h platforms/win32/plugins/SocketPlugin/SocketPlugin.h
Works now. Thanks for the hint.
One other thing you need to know: For Windows, there is a security feature in FilePlugin that causes several of the OSProcessPlugin primitives to fail. You can "fix" this by disabling the security function. Edit the file platforms/win32/vm/sqWin32HandleTable.h and disable the function IsHandleInTable() by having it just return a 1. I assume that this will void the warranty on your Windows VM ;) but as far as I know it will cause no problems for your own personal use.
I'm only developing the stuff on windows - so this shouldn't be a problem. Do I have to apply these patches for *nix as well?
CU,
Udo
On Mon, Jan 12, 2009 at 09:16:18PM +0100, Udo Schneider wrote:
David T. Lewis wrote:
One other thing you need to know: For Windows, there is a security feature in FilePlugin that causes several of the OSProcessPlugin primitives to fail. You can "fix" this by disabling the security function. Edit the file platforms/win32/vm/sqWin32HandleTable.h and disable the function IsHandleInTable() by having it just return a 1. I assume that this will void the warranty on your Windows VM ;) but as far as I know it will cause no problems for your own personal use.
I'm only developing the stuff on windows - so this shouldn't be a problem. Do I have to apply these patches for *nix as well?
No, the file handle registry is only present in FilePlugin on Windows.
Dave
squeak-dev@lists.squeakfoundation.org