What is worse than things not working is when things start working and I don't know why.
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.
That is if what you see below is in fact the Stack Interpreter.
Please let me know if it is not
Image
-----
/home/tty/usr/src/smalltalk/runStackVM32/Squeak4.6-13700.image
Squeak4.6
latest update: #13700
Current Change Set: Unnamed1
Image format 6505 (32 bit)
Virtual Machine
---------------
/home/wm/usr/local/stackVM32/lib/squeak/4.0-2881/squeak
Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.641]
Unix built on Mar 28 2014 12:22:20 Compiler: 4.8.2
platform sources revision VM: r2881 http://www.squeakvm.org/svn/squeak/branches/Cog Date: 2014-03-13 20:45:37 -0400 Plugins: r2545 http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins
CoInterpreter VMMaker.oscog-eem.641 uuid: c0305b66-db2d-45aa-8d25-267732aa1784 Mar 28 2014
StackToRegisterMappingCogit VMMaker.oscog-eem.641 uuid: c0305b66-db2d-45aa-8d25-267732aa1784 Mar 28 2014
If so, then we have a second data point of building a Stack Interpreter on a 64 bit machine with 32 bit compat libs.
file squeak
squeak: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
An interesting point of note is of note is that I was getting ready to debug a vm that would not run.
It was built with this configure command.
../../../platforms/unix/config/configure CC="gcc -m32" CXX="g++ -m32" --without-npsqueak CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread --x-libraries=/usr/lib --prefix=/home/tty/usr/local/stackVM32
and the result was a vm that built, but would hang waiting on what I believed was a signal.
Setting out to debug this non-running vm, I changed to -O2 flag to -Og which rhymes with 'd' and that spells "debugging".
../../../platforms/unix/config/configure CC="gcc -m32" CXX="g++ -m32" --without-npsqueak CFLAGS="-g -Og -msse2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LIBS=-lpthread --x-libraries=/usr/lib --prefix=/home/tty/usr/local/stackVM32
And, lo and behold, no more trouble in River City. It ran.