Hi. I'm trying to build a VM that can run Cobalt on my Linux
machine. I'm running VMMaker-ar.70 out of the Homebase image. I can't figure out what revision of the C code I am supposed to use, however. I tried two plausible revisions: http://squeakvm.org/svn/squeak/trunk rev 1966 (current latest) http://squeakvm.org/svn/squeak/trunk rev 1796 (the revision HydraVM was forked from) Both had the same issue: If I try compiling CroquetPlugin as internal, the linker fails to find "triBoxOverlap" If I try compiling CroquetPlugin as external, the compile completes, but the test CroquetVMTests >> #testCroquetPlugin fails, and a notification is printed on the console about "triBoxOverlap" not being found. Does anyone know which revision of the C code I should use? I have a feeling I'm using the wrong C code. My VMMaker config file is attached, as well as plugins.int and plugins.ext -- Matthew Fulmer -- http://mtfulmer.wordpress.com/ cobalt-unix.config (2K) Download Attachment plugins.ext (609 bytes) Download Attachment plugins.int (109 bytes) Download Attachment |
The easiest thing is probably to remove #primitiveTriBoxIntersects
from CroquetPlugin (AFAICT, it's not used in a few-months-old Cobalt release, and I doubt that's changed recently). Then, regenerate the plugin C source with VMMaker (or just edit that function out of the already-generated C source). I'm also attaching tribox.c, which contains the missing function, but be warned that Andreas says that the function is "broken" (I don't know the details... probably some numeric edge-case that potentially breaks replication). Good luck, Josh On Jan 26, 2009, at 10:55 AM, Matthew Fulmer wrote: > Hi. I'm trying to build a VM that can run Cobalt on my Linux > machine. I'm running VMMaker-ar.70 out of the Homebase image. > I can't figure out what revision of the C code I am supposed to > use, however. I tried two plausible revisions: > > http://squeakvm.org/svn/squeak/trunk rev 1966 (current latest) > http://squeakvm.org/svn/squeak/trunk rev 1796 (the revision HydraVM > was forked from) > > Both had the same issue: > > If I try compiling CroquetPlugin as internal, the linker fails to > find "triBoxOverlap" > > If I try compiling CroquetPlugin as external, the compile > completes, but the test CroquetVMTests >> #testCroquetPlugin > fails, and a notification is printed on the console about > "triBoxOverlap" not being found. > > Does anyone know which revision of the C code I should use? I > have a feeling I'm using the wrong C code. > > My VMMaker config file is attached, as well as plugins.int and > plugins.ext > > -- > Matthew Fulmer -- http://mtfulmer.wordpress.com/ > <cobalt-unix.config><plugins.ext><plugins.int> tribox.c (10K) Download Attachment |
On Jan 26, 2009, at 12:48 PM, Joshua Gargus wrote: > > I'm also attaching tribox.c, which contains the missing function, > but be warned that Andreas says that the function is "broken" (I > don't know the details... probably some numeric edge-case that > potentially breaks replication). > It turns out that it's even worse... the code is actually broken; under some situations it returns completely bogus results. Josh |
In reply to this post by Tapple Gao
On Mon, 2009-01-26 at 13:55 -0500, Matthew Fulmer wrote:
> Hi. I'm trying to build a VM that can run Cobalt on my Linux > machine. Does the out-of-the-box one run for you? I can get it to run, sort of. That is, if I don't run a croquet world things seem OK; if I do run such a world it's pretty iffy. > I'm running VMMaker-ar.70 out of the Homebase image. > I can't figure out what revision of the C code I am supposed to > use, I've been trying to do the same thing, but haven't got any definite answer except that the Cobalt VM apparently is taken unchanged from Croquet. Where that came from, no one has said. I filed a bug at http://croquet-src-01.oit.duke.edu/mantis/view.php?id=178 about this being unclear. > however. I tried two plausible revisions: > > http://squeakvm.org/svn/squeak/trunk rev 1966 (current latest) > http://squeakvm.org/svn/squeak/trunk rev 1796 (the revision HydraVM was forked from) > If I had to guess, I'd pick something earlier, since croquet forked off a considerably earlier version of squeak than present. However, the changelog indicates some croquet specific changes made to the unix sources relatively recently, so I'm not sure what the solution is. I would have started with head too :(. Ross Boylan > Both had the same issue: > > If I try compiling CroquetPlugin as internal, the linker fails to > find "triBoxOverlap" > > If I try compiling CroquetPlugin as external, the compile > completes, but the test CroquetVMTests >> #testCroquetPlugin > fails, and a notification is printed on the console about > "triBoxOverlap" not being found. > > Does anyone know which revision of the C code I should use? I > have a feeling I'm using the wrong C code. > > My VMMaker config file is attached, as well as plugins.int and > plugins.ext > |
Free forum by Nabble | Edit this page |