[squeak-dev] PreCompiled OSProcessPlugin for Win32

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

[squeak-dev] PreCompiled OSProcessPlugin for Win32

Udo Schneider
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


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] PreCompiled OSProcessPlugin for Win32

David T. Lewis
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


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] PreCompiled OSProcessPlugin for Win32

David T. Lewis
In reply to this post by Udo Schneider
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


Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: PreCompiled OSProcessPlugin for Win32

Udo Schneider
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


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: PreCompiled OSProcessPlugin for Win32

David T. Lewis
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