I wanted to play around with croquet but I haven't found a 64bit VM in either of the SDKs that I have downloaded. I have a amd64 squeak VM, but it isn't linked to the OpenAL libs so it segfaults on OpenAL's createContext. (With my squeak vm, the networked version outputs: SocketPlugin: ignoring unknown option 'SO_REUSEPORT' and then throws a two zero divide errors in squeak. It doesn't go any further) I do not want to install 32bit libraries, but I'd be willing to do a /little/ VM hacking if it hasn't already been done. The problem is that I can't find the vm sources (are they in monticello?) and I'm not really familiar with slang or monticello. When I got the 64bit squeak vm working on this machine, I basically just modified C code from a subversion checkout using a few patches from the internet. thanks |
On Jan 20, 2008, at 12:17 , Timmy Douglas wrote: > > I wanted to play around with croquet but I haven't found a 64bit VM in > either of the SDKs that I have downloaded. > I do not want to install 32bit libraries, but I'd be willing to do a > /little/ VM hacking if it hasn't already been done. Sources are at squeakvm.org - be sure to read the 64 bit FAQ first: http://www.squeakvm.org/squeak64/faq.html - Bert - |
Bert Freudenberg <[hidden email]> writes:
> On Jan 20, 2008, at 12:17 , Timmy Douglas wrote: > >> >> I wanted to play around with croquet but I haven't found a 64bit VM in >> either of the SDKs that I have downloaded. >> I do not want to install 32bit libraries, but I'd be willing to do a >> /little/ VM hacking if it hasn't already been done. > > Sources are at squeakvm.org - be sure to read the 64 bit FAQ first: > > http://www.squeakvm.org/squeak64/faq.html ok I didn't realize that the croquet and squeak vm used the same source code base. Because that version seems to be too old to run croquet, I rebuilt my squeak vm using the latest subversion sources: (crashes when I drag out the simple demo world) timmy@timmy-desktop:~/src/croquet/CroquetSDK-1.0.18$ squeak Croquet.1.0.18 Using default visual. Segmentation fault 31897832 OpenAL>createContext 31897348 OpenAL>initialize 31893424 OpenAL class>new 31893568 [] in OpenALHarness>initialize 31893332 BlockContext>on:do: 31893228 BlockContext>ifError: 30067592 OpenALHarness>initialize 30067500 CroquetHarnessWithMenu>initialize 30067224 Behavior>new 30066948 SimpleDemoMaster>setup 30067040 [] in CroquetParticipant>step 30066856 BlockContext>ensure: 30066764 CroquetParticipant>step 30066672 BFDParticipant>step 30066580 CroquetParticipantWithMenu>step 30066488 Morph>stepAt: 30066396 MorphicAlarm>value: 30066304 WorldState>runLocalStepMethodsIn: 30066212 WorldState>runStepMethodsIn: 30066120 PasteUpMorph>runStepMethods 30066028 WorldState>doOneCycleNowFor: 30065844 WorldState>doOneCycleFor: 30065752 PasteUpMorph>doOneCycle 29083120 [] in Project class>spawnNewProcess 29083212 [] in BlockContext>newProcess Aborted (core dumped) It also seems I still get zerodivide errors from: Float>>/ Float(Number)>>roundTo: Scrollbar>>setValue: PluggableListMorph(ScrollPane)>>hSetScrollDelta PluggableListMorph(ScrollPane)>>extent: which make it almost impossible to use the system browser. When I run it under gdb, it acts a little different but it still crashes after I try to drag out the simple world and cancel the emergency evaluator (gdb) run Croquet.1.0.18 Starting program: /usr/local/bin/squeak Croquet.1.0.18 Using default visual. Program received signal SIGSEGV, Segmentation fault. ioLoadExternalFunctionOfLengthFromModuleOfLength (functionNameIndex=<value optimized out>, functionNameLength=16, moduleNameIndex=<value optimized out>, moduleNameLength=14) at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/Cross/vm/sqNamedPrims.c:325 325 functionName[i] = functionNamePointer[i]; (gdb) bt #0 ioLoadExternalFunctionOfLengthFromModuleOfLength (functionNameIndex=<value optimized out>, functionNameLength=16, moduleNameIndex=<value optimized out>, moduleNameLength=14) at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/Cross/vm/sqNamedPrims.c:325 #1 0x0000000000424307 in primitiveCalloutToFFI () at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/unix/src/vm/interp.c:12750 #2 0x000000000041aa86 in dispatchFunctionPointer (aFunctionPointer=0x2aab004bae0c) at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/unix/src/vm/interp.c:3868 #3 0x000000000042e29e in interpret () at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/unix/src/vm/interp.c:7673 #4 0x000000000041926e in main (argc=<value optimized out>, argv=0x7fffc8d46398, envp=<value optimized out>) at /home/timmy/src/squeak/seaside-test/squeak-svn-source/platforms/unix/vm/sqUnixMain.c:1407 (gdb) l 320 int i; 321 322 if(functionNameLength > 255 || moduleNameLength > 255) 323 return 0; /* can't cope with those */ 324 for(i=0; i< functionNameLength; i++) 325 functionName[i] = functionNamePointer[i]; 326 functionName[functionNameLength] = 0; 327 for(i=0; i< moduleNameLength; i++) 328 moduleName[i] = moduleNamePointer[i]; 329 moduleName[moduleNameLength] = 0; (gdb) print functionNamePointer $3 = 0x2aab004bae0c <Address 0x2aab004bae0c out of bounds> functionName is just uninitialized. i = 0 |
Free forum by Nabble | Edit this page |