Re: [Pharo-project] Pharo and CommandShell on OSX ?
On Jan 3, 2011, at 7:25 PM, David T. Lewis wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c surely this is 'new enough' ? Is there a known 'stable' version you would suggest ? regards S.
Dave
Regards S.
3 January 2011 6:49:43 pm
VM: Mac OS - intel - 1065 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] Squeak VM 4.2.4b1 Image: Pharo-1.1-11406-rc3 [Latest update: #11406]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Users/stef/squeak/SeaSide-3.0 Trusted Dir /foobar/tooBar/forSqueak/bogus Untrusted Dir /Users/stef/Library/Preferences/Squeak/Internet/My Squeak
UndefinedObject(Object)>>mustBeBooleanIn: Receiver: nil Arguments and temporary variables: context: BufferedAsyncFileReadStream>>moveAvailableDataFrom: proceedValue: nil Receiver's instance variables: nil
UndefinedObject(Object)>>mustBeBoolean Receiver: nil Arguments and temporary variables:
Receiver's instance variables: nil
BufferedAsyncFileReadStream>>moveAvailableDataFrom: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: sqFile: #[48 205 236 155 72 91 120 160 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0] bufferSize: 1000 buffer: '...etc... count: #(0) Receiver's instance variables:
BufferedAsyncFileReadStream>>moveAvailableDataToBuffer Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables:
Receiver's instance variables:
BufferedAsyncFileReadStream>>update: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables:
[] in PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: BufferedAsyncFileReadStream: 'pipeReader' aDependent: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
DependentsArray>>do: Receiver: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') Arguments and temporary variables: aBlock: [:aDependent | aDependent update: aParameter] dep: BufferedAsyncFileReadStream: 'pipeReader' i: 1 iLimiT: 1 Receiver's instance variables: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader')
PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
PseudoAioEventHandler(Object)>>changed Receiver: a PseudoAioEventHandler Arguments and temporary variables:
Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in [] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
BlockClosure>>repeat Receiver: [self changed. d wait] Arguments and temporary variables:
Receiver's instance variables: outerContext: [] in PseudoAioEventHandler>>eventGeneratorProcess startpc: 59 numArgs: 0
[] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in BlockClosure>>newProcess Receiver: [[self changed. d wait] repeat] Arguments and temporary variables:
Receiver's instance variables: outerContext: PseudoAioEventHandler>>eventGeneratorProcess startpc: 54 numArgs: 0
--- The full stack --- UndefinedObject(Object)>>mustBeBooleanIn: UndefinedObject(Object)>>mustBeBoolean BufferedAsyncFileReadStream>>moveAvailableDataFrom: BufferedAsyncFileReadStream>>moveAvailableDataToBuffer BufferedAsyncFileReadStream>>update: [] in PseudoAioEventHandler(Object)>>changed: DependentsArray>>do: PseudoAioEventHandler(Object)>>changed: PseudoAioEventHandler(Object)>>changed [] in [] in PseudoAioEventHandler>>eventGeneratorProcess BlockClosure>>repeat [] in PseudoAioEventHandler>>eventGeneratorProcess [] in BlockClosure>>newProcess
On Mon, Jan 03, 2011 at 09:06:37PM -0800, Stef T wrote:
On Jan 3, 2011, at 7:25 PM, David T. Lewis wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
AioPlugin is on SqueakSource in http://www.squeaksource.com/AioPlugin. It's written in Smalltalk, translated to C. I don't have any experience with Mac or Xcode but there are others on the Pharo/Squeak/vm-dev lists who can probably help.
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
I was referring to the OSProcessPlugin, which separate from the OSProcess package. The plugin is on SqueakSource at: http://www.squeaksource.com/OSProcessPlugin This is written in Smalltalk, translated to C and compiled as a VM plugin. It was originally part of of OSProcess, but I split it out to a separate package years ago. You have an up to date OSProcess package, but your OSProcessPlugin is many years old, from back before we got it working on Mac. The old plugin will crash your VM. Dave
Stef, welcome! it will help if you say wich VM are you using. cheers mariano On Tue, Jan 4, 2011 at 6:43 AM, David T. Lewis <lewis@mail.msen.com> wrote:
On Mon, Jan 03, 2011 at 09:06:37PM -0800, Stef T wrote:
On Jan 3, 2011, at 7:25 PM, David T. Lewis wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that
it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get
this
warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
AioPlugin is on SqueakSource in http://www.squeaksource.com/AioPlugin. It's written in Smalltalk, translated to C. I don't have any experience with Mac or Xcode but there are others on the Pharo/Squeak/vm-dev lists who can probably help.
but 2) None of the commands get executed. If I try the stuff which will
eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me
over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
I was referring to the OSProcessPlugin, which separate from the OSProcess package. The plugin is on SqueakSource at: http://www.squeaksource.com/OSProcessPlugin
This is written in Smalltalk, translated to C and compiled as a VM plugin. It was originally part of of OSProcess, but I split it out to a separate package years ago. You have an up to date OSProcess package, but your OSProcessPlugin is many years old, from back before we got it working on Mac. The old plugin will crash your VM.
Dave
Hello Mariano, David, Everyone, I am currently using; Pharo-1.1-11406-rc3 Latest update: #11406 But I have tried with; Pharo1.1.1 Latest update: #11414 I installed the VMMaker (as well as the configuration step), then I also reinstalled OSProcessPlugin/CommandShell via Monticello. No dice, same NonBooleanReceiver. Name: VMConstruction-Plugins-OSProcessPlugin-dtl.27 Author: dtl Time: 3 January 2011, 9:23:04.998 pm Regards S. On Jan 4, 2011, at 1:26 AM, Mariano Martinez Peck wrote:
Stef, welcome!
it will help if you say wich VM are you using.
cheers
mariano
On Tue, Jan 4, 2011 at 6:43 AM, David T. Lewis <lewis@mail.msen.com> wrote: On Mon, Jan 03, 2011 at 09:06:37PM -0800, Stef T wrote:
On Jan 3, 2011, at 7:25 PM, David T. Lewis wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
AioPlugin is on SqueakSource in http://www.squeaksource.com/AioPlugin. It's written in Smalltalk, translated to C. I don't have any experience with Mac or Xcode but there are others on the Pharo/Squeak/vm-dev lists who can probably help.
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
I was referring to the OSProcessPlugin, which separate from the OSProcess package. The plugin is on SqueakSource at: http://www.squeaksource.com/OSProcessPlugin
This is written in Smalltalk, translated to C and compiled as a VM plugin. It was originally part of of OSProcess, but I split it out to a separate package years ago. You have an up to date OSProcess package, but your OSProcessPlugin is many years old, from back before we got it working on Mac. The old plugin will crash your VM.
Dave
On Tue, Jan 4, 2011 at 12:26 PM, Stef T <stef@ummon.com> wrote:
Hello Mariano, David, Everyone,
I am currently using;
Pharo-1.1-11406-rc3 Latest update: #11406
But I have tried with;
Pharo1.1.1 Latest update: #11414
Hi Stef. That's the version of the Image, but not the VM. Are you using a PharoOneClick? (Pharo.app) I mean..do you have all together where you do a double click ? or you have the VM first, you double clcik and then you choose the image? if this one, then you can have the name of such vm, like Squeak 4.2.5beta1U for example cheers mariano
I installed the VMMaker (as well as the configuration step), then I also reinstalled OSProcessPlugin/CommandShell via Monticello. No dice, same NonBooleanReceiver.
Name: VMConstruction-Plugins-OSProcessPlugin-dtl.27 Author: dtl Time: 3 January 2011, 9:23:04.998 pm
Regards S.
On Jan 4, 2011, at 1:26 AM, Mariano Martinez Peck wrote:
Stef, welcome!
it will help if you say wich VM are you using.
cheers
mariano
On Tue, Jan 4, 2011 at 6:43 AM, David T. Lewis <lewis@mail.msen.com>wrote:
On Mon, Jan 03, 2011 at 09:06:37PM -0800, Stef T wrote:
On Jan 3, 2011, at 7:25 PM, David T. Lewis wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and
that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get
this
warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
AioPlugin is on SqueakSource in http://www.squeaksource.com/AioPlugin. It's written in Smalltalk, translated to C. I don't have any experience with Mac or Xcode but there are others on the Pharo/Squeak/vm-dev lists who can probably help.
but 2) None of the commands get executed. If I try the stuff which will
eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me
over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
I was referring to the OSProcessPlugin, which separate from the OSProcess package. The plugin is on SqueakSource at: http://www.squeaksource.com/OSProcessPlugin
This is written in Smalltalk, translated to C and compiled as a VM plugin. It was originally part of of OSProcess, but I split it out to a separate package years ago. You have an up to date OSProcess package, but your OSProcessPlugin is many years old, from back before we got it working on Mac. The old plugin will crash your VM.
Dave
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
good there is a gitorious account for the vm and we would enjoy that people can contribute via there. http://gitorious.org/cogvm http://gitorious.org/squeak-vm
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
Dave
Regards S.
3 January 2011 6:49:43 pm
VM: Mac OS - intel - 1065 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] Squeak VM 4.2.4b1 Image: Pharo-1.1-11406-rc3 [Latest update: #11406]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Users/stef/squeak/SeaSide-3.0 Trusted Dir /foobar/tooBar/forSqueak/bogus Untrusted Dir /Users/stef/Library/Preferences/Squeak/Internet/My Squeak
UndefinedObject(Object)>>mustBeBooleanIn: Receiver: nil Arguments and temporary variables: context: BufferedAsyncFileReadStream>>moveAvailableDataFrom: proceedValue: nil Receiver's instance variables: nil
UndefinedObject(Object)>>mustBeBoolean Receiver: nil Arguments and temporary variables:
Receiver's instance variables: nil
BufferedAsyncFileReadStream>>moveAvailableDataFrom: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: sqFile: #[48 205 236 155 72 91 120 160 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0] bufferSize: 1000 buffer: '...etc... count: #(0) Receiver's instance variables:
BufferedAsyncFileReadStream>>moveAvailableDataToBuffer Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables:
Receiver's instance variables:
BufferedAsyncFileReadStream>>update: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables:
[] in PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: BufferedAsyncFileReadStream: 'pipeReader' aDependent: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
DependentsArray>>do: Receiver: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') Arguments and temporary variables: aBlock: [:aDependent | aDependent update: aParameter] dep: BufferedAsyncFileReadStream: 'pipeReader' i: 1 iLimiT: 1 Receiver's instance variables: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader')
PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
PseudoAioEventHandler(Object)>>changed Receiver: a PseudoAioEventHandler Arguments and temporary variables:
Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in [] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
BlockClosure>>repeat Receiver: [self changed. d wait] Arguments and temporary variables:
Receiver's instance variables: outerContext: [] in PseudoAioEventHandler>>eventGeneratorProcess startpc: 59 numArgs: 0
[] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in BlockClosure>>newProcess Receiver: [[self changed. d wait] repeat] Arguments and temporary variables:
Receiver's instance variables: outerContext: PseudoAioEventHandler>>eventGeneratorProcess startpc: 54 numArgs: 0
--- The full stack --- UndefinedObject(Object)>>mustBeBooleanIn: UndefinedObject(Object)>>mustBeBoolean BufferedAsyncFileReadStream>>moveAvailableDataFrom: BufferedAsyncFileReadStream>>moveAvailableDataToBuffer BufferedAsyncFileReadStream>>update: [] in PseudoAioEventHandler(Object)>>changed: DependentsArray>>do: PseudoAioEventHandler(Object)>>changed: PseudoAioEventHandler(Object)>>changed [] in [] in PseudoAioEventHandler>>eventGeneratorProcess BlockClosure>>repeat [] in PseudoAioEventHandler>>eventGeneratorProcess [] in BlockClosure>>newProcess
On Jan 4, 2011, at 8:36 AM, Stéphane Ducasse wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
good there is a gitorious account for the vm and we would enjoy that people can contribute via there.
Hello Stéphane, Everyone, Under OSX (10.6.5) and pulling the vm source from squeak (either the trunk or the blessed branch) I get this when building (without making any changes to the installed plugins -- yet ;) Stef-T-MacBook-Pro:build stef$ ../unix/cmake/configure --without-RomePlugin --without-vm-display-Quartz .... [ 70%] Building C object CMakeFiles/squeakvm.dir/version.c.o [ 71%] Building C object CMakeFiles/squeakvm.dir/disabledPlugins.c.o Linking C executable squeakvm Undefined symbols: "_sendInvokeCallbackStackRegistersJmpbuf", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_classUnsafeAlien", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_primitiveFailFor", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_internalIsImmutable", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_getStackPointer", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_reestablishContextPriorToCallback", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_classAlien", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_internalIsMutable", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o ld: symbol(s) not found collect2: ld returned 1 exit status make[2]: *** [squeakvm] Error 1 make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2 make: *** [all] Error 2 that's .. not looking too healthy. Is OSX 'knowingly busted' ? Regards S.
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
Dave
Regards S.
3 January 2011 6:49:43 pm
VM: Mac OS - intel - 1065 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] Squeak VM 4.2.4b1 Image: Pharo-1.1-11406-rc3 [Latest update: #11406]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Users/stef/squeak/SeaSide-3.0 Trusted Dir /foobar/tooBar/forSqueak/bogus Untrusted Dir /Users/stef/Library/Preferences/Squeak/Internet/My Squeak
UndefinedObject(Object)>>mustBeBooleanIn: Receiver: nil Arguments and temporary variables: context: BufferedAsyncFileReadStream>>moveAvailableDataFrom: proceedValue: nil Receiver's instance variables: nil
UndefinedObject(Object)>>mustBeBoolean Receiver: nil Arguments and temporary variables:
Receiver's instance variables: nil
BufferedAsyncFileReadStream>>moveAvailableDataFrom: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: sqFile: #[48 205 236 155 72 91 120 160 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0] bufferSize: 1000 buffer: '...etc... count: #(0) Receiver's instance variables:
BufferedAsyncFileReadStream>>moveAvailableDataToBuffer Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables:
Receiver's instance variables:
BufferedAsyncFileReadStream>>update: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables:
[] in PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: BufferedAsyncFileReadStream: 'pipeReader' aDependent: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
DependentsArray>>do: Receiver: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') Arguments and temporary variables: aBlock: [:aDependent | aDependent update: aParameter] dep: BufferedAsyncFileReadStream: 'pipeReader' i: 1 iLimiT: 1 Receiver's instance variables: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader')
PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
PseudoAioEventHandler(Object)>>changed Receiver: a PseudoAioEventHandler Arguments and temporary variables:
Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in [] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
BlockClosure>>repeat Receiver: [self changed. d wait] Arguments and temporary variables:
Receiver's instance variables: outerContext: [] in PseudoAioEventHandler>>eventGeneratorProcess startpc: 59 numArgs: 0
[] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in BlockClosure>>newProcess Receiver: [[self changed. d wait] repeat] Arguments and temporary variables:
Receiver's instance variables: outerContext: PseudoAioEventHandler>>eventGeneratorProcess startpc: 54 numArgs: 0
--- The full stack --- UndefinedObject(Object)>>mustBeBooleanIn: UndefinedObject(Object)>>mustBeBoolean BufferedAsyncFileReadStream>>moveAvailableDataFrom: BufferedAsyncFileReadStream>>moveAvailableDataToBuffer BufferedAsyncFileReadStream>>update: [] in PseudoAioEventHandler(Object)>>changed: DependentsArray>>do: PseudoAioEventHandler(Object)>>changed: PseudoAioEventHandler(Object)>>changed [] in [] in PseudoAioEventHandler>>eventGeneratorProcess BlockClosure>>repeat [] in PseudoAioEventHandler>>eventGeneratorProcess [] in BlockClosure>>newProcess
On 4 January 2011 22:25, Stef T <stef@ummon.com> wrote:
On Jan 4, 2011, at 8:36 AM, Stéphane Ducasse wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
good there is a gitorious account for the vm and we would enjoy that people can contribute via there.
Hello Stéphane, Everyone,
Under OSX (10.6.5) and pulling the vm source from squeak (either the trunk or the blessed branch) I get this when building (without making any changes to the installed plugins -- yet ;)
Stef-T-MacBook-Pro:build stef$ ../unix/cmake/configure --without-RomePlugin --without-vm-display-Quartz .... [ 70%] Building C object CMakeFiles/squeakvm.dir/version.c.o [ 71%] Building C object CMakeFiles/squeakvm.dir/disabledPlugins.c.o Linking C executable squeakvm Undefined symbols:  "_sendInvokeCallbackStackRegistersJmpbuf", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_classUnsafeAlien", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_primitiveFailFor", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_internalIsImmutable", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_getStackPointer", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_reestablishContextPriorToCallback", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_classAlien", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o  "_internalIsMutable", referenced from:    _sqGetInterpreterProxy in sqVirtualMachine.c.o ld: symbol(s) not found collect2: ld returned 1 exit status make[2]: *** [squeakvm] Error 1 make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2 make: *** [all] Error 2
that's .. not looking too healthy. Is OSX 'knowingly busted' ?
i'm not sure that this was ever worked before. For OSX, as a 'special' kind of unix there is a separate xcode project, using which you should build VM. And besides of that, we're working on creating a cmake configuration(s) building VM on macos.
Regards S.
-- Best regards, Igor Stasenko AKA sig.
the plugin does not runs out of the box on current vm's, I'm afraid :( Tomorrow I will try to fix the remaining problems for running this plugin... wish me luck :) Cheers, Esteban El 04/01/2011, a las 6:25p.m., Stef T escribió:
On Jan 4, 2011, at 8:36 AM, Stéphane Ducasse wrote:
On Mon, Jan 03, 2011 at 06:55:45PM -0800, Stef T wrote:
1) CommandShell complains about AioPlugin not being present and that it will use the 'old slow' way. That's fine, it's merely a warning
AFAIK, noone has tried building the AioPlugin for Mac, so you will get this warning when running on a Mac. But as you say, it's just a warning.
Is there a pointer for the source code ? I am pretty handy with Xcode and don't mind giving it a whirl ;)
good there is a gitorious account for the vm and we would enjoy that people can contribute via there.
Hello Stéphane, Everyone,
Under OSX (10.6.5) and pulling the vm source from squeak (either the trunk or the blessed branch) I get this when building (without making any changes to the installed plugins -- yet ;)
Stef-T-MacBook-Pro:build stef$ ../unix/cmake/configure --without-RomePlugin --without-vm-display-Quartz .... [ 70%] Building C object CMakeFiles/squeakvm.dir/version.c.o [ 71%] Building C object CMakeFiles/squeakvm.dir/disabledPlugins.c.o Linking C executable squeakvm Undefined symbols: "_sendInvokeCallbackStackRegistersJmpbuf", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_classUnsafeAlien", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_primitiveFailFor", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_internalIsImmutable", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_getStackPointer", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_reestablishContextPriorToCallback", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_classAlien", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o "_internalIsMutable", referenced from: _sqGetInterpreterProxy in sqVirtualMachine.c.o ld: symbol(s) not found collect2: ld returned 1 exit status make[2]: *** [squeakvm] Error 1 make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2 make: *** [all] Error 2
that's .. not looking too healthy. Is OSX 'knowingly busted' ?
Regards S.
but 2) None of the commands get executed. If I try the stuff which will eval inside squeak/pharo, then that's fine (Eg; stdout nextPutAll: 'hello world'; cr.). However, if I try a command such as 'ls' or 'who', all hell breaks lose. stack trace follows :)
If I am doing anything obviously wrong, please feel free to hit me over the head :)
Nope, it's not you, it's the plugin included with your VM. Some of the Mac VMs in circulation were accidentally built with a very out of date version of the OSProcessPlugin. Apparently you have one of them, and it will definitely not work. But I think there is a newer version (4.2.5 IIRC) that has the up to date plugin that works properly on Mac.
Hrm, I am using the OSProcess from squeaksource .59. The version history says
Name: OSProcess-dtl.59 Author: dtl Time: 28 November 2010, 8:43:48.839 pm UUID: bd5d2b4e-efbd-4091-ac0a-d0bd7af64b2c
surely this is 'new enough' ? Is there a known 'stable' version you would suggest ?
regards S.
Dave
Regards S.
3 January 2011 6:49:43 pm
VM: Mac OS - intel - 1065 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] Squeak VM 4.2.4b1 Image: Pharo-1.1-11406-rc3 [Latest update: #11406]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Users/stef/squeak/SeaSide-3.0 Trusted Dir /foobar/tooBar/forSqueak/bogus Untrusted Dir /Users/stef/Library/Preferences/Squeak/Internet/My Squeak
UndefinedObject(Object)>>mustBeBooleanIn: Receiver: nil Arguments and temporary variables: context: BufferedAsyncFileReadStream>>moveAvailableDataFrom: proceedValue: nil Receiver's instance variables: nil
UndefinedObject(Object)>>mustBeBoolean Receiver: nil Arguments and temporary variables:
Receiver's instance variables: nil
BufferedAsyncFileReadStream>>moveAvailableDataFrom: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: sqFile: #[48 205 236 155 72 91 120 160 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0] bufferSize: 1000 buffer: '...etc... count: #(0) Receiver's instance variables:
BufferedAsyncFileReadStream>>moveAvailableDataToBuffer Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables:
Receiver's instance variables:
BufferedAsyncFileReadStream>>update: Receiver: BufferedAsyncFileReadStream: 'pipeReader' Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables:
[] in PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: BufferedAsyncFileReadStream: 'pipeReader' aDependent: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
DependentsArray>>do: Receiver: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') Arguments and temporary variables: aBlock: [:aDependent | aDependent update: aParameter] dep: BufferedAsyncFileReadStream: 'pipeReader' i: 1 iLimiT: 1 Receiver's instance variables: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader')
PseudoAioEventHandler(Object)>>changed: Receiver: a PseudoAioEventHandler Arguments and temporary variables: aParameter: a PseudoAioEventHandler Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
PseudoAioEventHandler(Object)>>changed Receiver: a PseudoAioEventHandler Arguments and temporary variables:
Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in [] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
BlockClosure>>repeat Receiver: [self changed. d wait] Arguments and temporary variables:
Receiver's instance variables: outerContext: [] in PseudoAioEventHandler>>eventGeneratorProcess startpc: 59 numArgs: 0
[] in PseudoAioEventHandler>>eventGeneratorProcess Receiver: a PseudoAioEventHandler Arguments and temporary variables: d: a Delay(125 msecs) Receiver's instance variables: dependents: a DependentsArray(BufferedAsyncFileReadStream: 'pipeReader') eventGenerator: a Process in Debugger class>>openOn:context:label:contents:full...etc...
[] in BlockClosure>>newProcess Receiver: [[self changed. d wait] repeat] Arguments and temporary variables:
Receiver's instance variables: outerContext: PseudoAioEventHandler>>eventGeneratorProcess startpc: 54 numArgs: 0
--- The full stack --- UndefinedObject(Object)>>mustBeBooleanIn: UndefinedObject(Object)>>mustBeBoolean BufferedAsyncFileReadStream>>moveAvailableDataFrom: BufferedAsyncFileReadStream>>moveAvailableDataToBuffer BufferedAsyncFileReadStream>>update: [] in PseudoAioEventHandler(Object)>>changed: DependentsArray>>do: PseudoAioEventHandler(Object)>>changed: PseudoAioEventHandler(Object)>>changed [] in [] in PseudoAioEventHandler>>eventGeneratorProcess BlockClosure>>repeat [] in PseudoAioEventHandler>>eventGeneratorProcess [] in BlockClosure>>newProcess
participants (6)
-
David T. Lewis -
Esteban Lorenzano -
Igor Stasenko -
Mariano Martinez Peck -
Stef T -
Stéphane Ducasse