<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Mar 28, 2014 at 4:02 PM, gettimothy <span dir="ltr">&lt;<a href="mailto:gettimothy@zoho.com" target="_blank">gettimothy@zoho.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><u></u><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif">Thank you Eliot.<br><br>Live and learn. Althought I have yet to generate new Cog source from VMMaker, it is good to know I can compile and run it when I get that figured out. (:<br>
<br>It appears I was building existing source code for the Cog VM that came with the svn checkout.<br><br>I guess the next thing is to tell the configure script to use the Stack VM src that I did generate with VMMaker in oscogvm/stacksrc/<br>
<br>ok..I added these two flags to the configure  --with-src=stacksrc --enable-cogit=false<br></div></div></blockquote><div><br></div><div>that&#39;s right.  I would construct stackbuild/unixbuild and clone the various bld subdirectories and then edit their mvms so you don&#39;t have to run configure manually.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif"><br><br>and got a build error..<br>
<br>/home/wm/usr/src/smalltalk/buildStackInterpreter/oscogvm/stacksrc/vm/gcc3x-interp.c:10108: undefined reference to `minLargeHeaderSize&#39;<br>/home/wm/usr/src/smalltalk/buildStackInterpreter/oscogvm/stacksrc/vm/gcc3x-interp.c:10109: undefined reference to `sizeHeaderputBodySize&#39;<br>
/home/wm/usr/src/smalltalk/buildStackInterpreter/oscogvm/stacksrc/vm/gcc3x-interp.c:10180: undefined reference to `sizeHeaderputBodySize<br><br><br>Which tells me it is looking in the correct place to build. <br></div></div>
</blockquote><div><br></div><div>right.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif">
Sound about right?<br></div></div></blockquote><div><br></div><div>yes, looks like you&#39;re on your way.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div style="font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif"><br>cordially,<br><br>tty<br><div><br><br><br>---- On Fri, 28 Mar 2014 15:33:23 -0700 <b>Eliot Miranda&lt;<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>&gt;</b> wrote ---- <br>
</div><br><blockquote style="border-left:1px solid #0000ff;padding-left:6px;margin:0 0 0 5px"> <div dir="ltr"><br><div><br><br><div>On Fri, Mar 28, 2014 at 2:56 PM, gettimothy <span dir="ltr">&lt;<a href="mailto:gettimothy@zoho.com" target="_blank">gettimothy@zoho.com</a>&gt;</span> wrote:<br>
 <blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"> <br><u></u><div><div style="font-size:10pt;font-family:verdana,arial,helvetica,sans-serif">
 What is worse than things not working is when things start working and I don&#39;t know why.<br><br>After a hiatus in PHP land, I am back to Squeak Land and lo and behold, the Stack Interpreter 32 bit compiled and runs the 4.6 image.<br>
 </div></div></blockquote><div><br></div><div>You&#39;ve compiled a Cog VM.  Let me take you through the version output:</div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
 <div><div style="font-size:10pt;font-family:verdana,arial,helvetica,sans-serif"><br>That is if what you see below is in fact the Stack Interpreter.<br><br>Please let me know if it is not<br><br>Image<br>-----<br>/home/tty/usr/src/smalltalk/runStackVM32/Squeak4.6-13700.image<br>
 Squeak4.6<br>latest update: #13700<br>Current Change Set: Unnamed1<br>Image format 6505 (32 bit)<br><br>Virtual Machine<br>---------------<br>/home/wm/usr/local/stackVM32/lib/squeak/4.0-2881/squeak<br>Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.641]<br>
 </div></div></blockquote><div><br></div><div>^^ the CoInterpreter in the above is the interpreter class.  If it was a Stack VM it would say StackInterpreter.</div><div><br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
 <div><div style="font-size:10pt;font-family:verdana,arial,helvetica,sans-serif">Unix built on Mar 28 2014 12:22:20 Compiler: 4.8.2<br>platform sources revision VM: r2881 <a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a> Date: 2014-03-13 20:45:37 -0400 Plugins: r2545 <a href="http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins" target="_blank">http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins</a><br>
 CoInterpreter VMMaker.oscog-eem.641 uuid: c0305b66-db2d-45aa-8d25-267732aa1784 Mar 28 2014<br>StackToRegisterMappingCogit VMMaker.oscog-eem.641 uuid: c0305b66-db2d-45aa-8d25-267732aa1784 Mar 28 2014<br></div></div></blockquote>
 <div><br></div><div>Likewise these two are the names and package version for the interpreter and JIT classes.</div><div><br></div><div>Here&#39;s what a (Spur) Stack VM looks like on the Mac:</div><div><br></div><div><div>
 /Users/eliot/Cog/oscogvm/spurstackbuild/macbuild/Fast.app/Contents/MacOS/Squeak</div><div>4.0 4.0.2885 Mac OS X built on Mar 28 2014 12:25:04 Compiler: 4.2.1 (Apple Inc. build 5666) (dot 3) [Production Spur VM]</div><div>
 StackInterpreter VMMaker.oscog-eem.658 uuid: e40c5fd5-9990-433f-bd76-2f8d0324e24f Mar 28 2014</div><div>VM: r2885 <a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a> Date: 2014-03-28 12:19:16 -0700</div>
 <div>Plugins: r2545 <a href="http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins" target="_blank">http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins</a></div></div><div><br></div><div>The above gets printed by supplying the -version option to the VM.</div>
 <div><br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:verdana,arial,helvetica,sans-serif">
 If so, then we have a second data point of building a Stack Interpreter on a 64 bit machine with 32 bit compat libs.<br><br> file squeak <br>squeak: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped<br>
 <br>An interesting point of note is of note is that I was getting ready to debug a vm that would not run.<br>It was built with this configure command.<br><br><br><blockquote style="border:1px solid rgb(204,204,204);padding:7px;background-color:rgb(245,245,245)">
 <div> ../../../platforms/unix/config/configure CC=&quot;gcc -m32&quot; CXX=&quot;g++ -m32&quot; --without-npsqueak CFLAGS=&quot;-g -O2 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0&quot; LIBS=-lpthread --x-libraries=/usr/lib --prefix=/home/tty/usr/local/stackVM32</div>
 </blockquote> <br>and the result was a vm that built, but would hang waiting on what I believed was a signal.<br><br>Setting out to debug this non-running vm, I changed to -O2 flag to -Og which rhymes with &#39;d&#39; and that spells &quot;debugging&quot;.<br>
 <br><br><br><blockquote style="border:1px solid rgb(204,204,204);padding:7px;background-color:rgb(245,245,245)"><div>../../../platforms/unix/config/configure CC=&quot;gcc -m32&quot; CXX=&quot;g++ -m32&quot; --without-npsqueak CFLAGS=&quot;-g -Og -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0&quot; LIBS=-lpthread --x-libraries=/usr/lib --prefix=/home/tty/usr/local/stackVM32</div>
 </blockquote> <br><br>And, lo and behold, no more trouble in River City. It ran.<br></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div> </div></div> </blockquote><br></div></div>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div>
</div></div>