RemoteTask does not work on Macos

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

RemoteTask does not work on Macos

kilon.alios
I tried to run the parrarelExample method of RemoteTask class which is loadable from CommandShell project and it seems it looks for a plugin that cant find.

It gives me a warning

forkSqueak requires XDispalyControlPlugin

if I proceed I get another warning

process accessor module not available

if i proceed I get MNU: receiver of "pid" is nil






Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

David T. Lewis
On Mon, Dec 21, 2015 at 01:23:35PM +0000, Dimitris Chloupis wrote:

> I tried to run the parrarelExample method of RemoteTask class which is
> loadable from CommandShell project and it seems it looks for a plugin that
> cant find.
>
> It gives me a warning
>
> forkSqueak requires XDispalyControlPlugin
>
> if I proceed I get another warning
>
> process accessor module not available
>
> if i proceed I get MNU: receiver of "pid" is nil

I think that your VM is missing a couple of necessary plugins. The
XDisplayControlPlugin is used to close the socket connection to the
X display in the new child VM/image. You may also be missing the
OSProcessPlugin.

Note, I developed this in Squeak on Linux, so it may be that some work
would be needed for Pharo. If you have a Squeak image handy, you might
want to look at it there.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

kilon.alios
ok thanks David :)

On Mon, Dec 21, 2015 at 3:48 PM David T. Lewis <[hidden email]> wrote:
On Mon, Dec 21, 2015 at 01:23:35PM +0000, Dimitris Chloupis wrote:
> I tried to run the parrarelExample method of RemoteTask class which is
> loadable from CommandShell project and it seems it looks for a plugin that
> cant find.
>
> It gives me a warning
>
> forkSqueak requires XDispalyControlPlugin
>
> if I proceed I get another warning
>
> process accessor module not available
>
> if i proceed I get MNU: receiver of "pid" is nil

I think that your VM is missing a couple of necessary plugins. The
XDisplayControlPlugin is used to close the socket connection to the
X display in the new child VM/image. You may also be missing the
OSProcessPlugin.

Note, I developed this in Squeak on Linux, so it may be that some work
would be needed for Pharo. If you have a Squeak image handy, you might
want to look at it there.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

Stephan Eggermont-3
In reply to this post by David T. Lewis
On 21/12/15 14:47, David T. Lewis wrote:
> I think that your VM is missing a couple of necessary plugins. The
> XDisplayControlPlugin is used to close the socket connection to the
> X display in the new child VM/image. You may also be missing the
> OSProcessPlugin.
>
> Note, I developed this in Squeak on Linux, so it may be that some work
> would be needed for Pharo. If you have a Squeak image handy, you might
> want to look at it there.

That has the same problem, in both the Squeak5/Spur All-In-One version
and the SQueak 4.6.
I loaded OSProcess and CommandShell <head> from SqueakMap to try it

Warning: forkSqueak requires XDisplayControlPlugin

(Mac OS 10.10.5)

Stephan


Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

Stephan Eggermont-3
On 21/12/15 18:09, Stephan Eggermont wrote:
> On 21/12/15 14:47, David T. Lewis wrote:
>> I think that your VM is missing a couple of necessary plugins. The
>> XDisplayControlPlugin is used to close the socket connection to the
>> X display in the new child VM/image. You may also be missing the
>> OSProcessPlugin.

The OSProcessPlugin in found everywhere. It is called 4.3.3 Cog
everywhere (Pharo Spur, Squeak 4.6, Squeak 5.0)

OSProcess accessor osppModuleVersionString.

In Squeak there is a UnixOSProcessPlugin.bundle in Resources,
in Pharo Spur there is a plugins directory containing dylib's,
but nothing named close to OSProcess.

Is there any progress made to forkSqueak on mac since 2010?

Stephan


Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

David T. Lewis
In reply to this post by Stephan Eggermont-3
On Mon, Dec 21, 2015 at 06:09:05PM +0100, Stephan Eggermont wrote:

> On 21/12/15 14:47, David T. Lewis wrote:
> >I think that your VM is missing a couple of necessary plugins. The
> >XDisplayControlPlugin is used to close the socket connection to the
> >X display in the new child VM/image. You may also be missing the
> >OSProcessPlugin.
> >
> >Note, I developed this in Squeak on Linux, so it may be that some work
> >would be needed for Pharo. If you have a Squeak image handy, you might
> >want to look at it there.
>
> That has the same problem, in both the Squeak5/Spur All-In-One version
> and the SQueak 4.6.
> I loaded OSProcess and CommandShell <head> from SqueakMap to try it
>
> Warning: forkSqueak requires XDisplayControlPlugin
>
> (Mac OS 10.10.5)

Hi Stephan,

I must apologize, I think I gave some bad advice here. I don't have a
Mac, and I'm afraid that I was thinking in terms of the Unix VM code
base.

My expectation is that a Unix VM (interpreter, Cog, Spur) running on
Mac with X11 display should work with the current RemoteTask, exactly
as on on Linux. But I have not personally tried it, and I am not really
sure what would be required to get it working on the standard released
Mac VMs.

Sorry for the confusion.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: RemoteTask does not work on Macos

Stephan Eggermont-3
On 21/12/15 21:17, David T. Lewis wrote:
> My expectation is that a Unix VM (interpreter, Cog, Spur) running on
> Mac with X11 display should work with the current RemoteTask, exactly
> as on on Linux. But I have not personally tried it, and I am not really
> sure what would be required to get it working on the standard released
> Mac VMs.
>
> Sorry for the confusion.

No problem.

AioEventHandlerTestCase>>testEnableHandleAndDisable
AioEventHandlerTestCase>>testHandleForFile
use
        anOpenFile := SourceFiles at: 1.
in pharo SourceFiles is a SourceFileArray that doesn't respond to
#at: but uses #fileAt:

In all three,
UnixProcessAccessorTestCase>>testRedirectStdOutTo
fails at
        self deny: OSProcess thisOSProcess stdOut closed.

and also
UnixProcessTestCase>>testCatAFile fails at
        self shouldnt: [p initialStdOut closed]. "Shared stdout with the VM,
should be open"

Ignoring #safeToForkSqueak crashes Pharo as expected when running the
forking tests :(

Stephan