[VM] [WIN32] [BUG] Adventures in building

Ross Boylan RossBoylan at stanfordalumni.org
Tue Feb 19 02:14:16 UTC 2002


I've tried a naive approach to building on Win32 with MSVC.  Regrettably, 
it doesn't build.  A few of the highlights, with [BUG] marking a few 
seeming smaller bugs.

I tried to file VMMaker 3.2.5 into Squeak3.3a-4744.image, and almost 
immediately got errors about name redefinitions from other modules.  I 
decided this was a bridge too far, and dropped back to 
Squeak3.2gamma-4743.image.

I positioned the image above the platforms directory I got from 
sourceforge.  I got the top of the tree, not any tagged versions.  Started 
the VMMaker GUI.

[BUG] The AsynchFilePlugIn plugins refused to move out of the left pane, 
presumably because SF had AsyncFilePlugIn (no h after Async).  Several 
other plugins with no obvious matching names were also left adrift.

[BUG] Although I changed the name of "Path to Generated sources" in the 
GUI, it used its original name for output.  Or do I need to hit accept 
after editing this?

I then edited the .dsp file by hand to give it the correct path to the 
files.  I did not check for a good match between the files listed in the 
.dsp and the actual directory.

Then I built, using MSVC 6.  Many errors ensued.  Many were caused by the 
following two items:
1. sqVirtualMachine.h defines a type "long long".  MSVC hasn't heard of it.
2. attempted use of a #pragma export

Popular warnings:
Signed/unsigned mismatch
dangerous type conversions (e.g. double -> float)

And quite a few other things.  sqWin32D3D.c was particularly problematic.

Also, the generated code did not have an intPlugins directory, to my 
surprise.  In fact, it was quite flat; almost everything was under 
vm.  There was a doc and a libmpeg subdirectory.

I'll close with an offer: If someone can tell me what kind of an MSVC 
project file or workspace is required, I might be able to write a VC macro 
that would generate it appropriately (e.g., if the recipe is add all *.c 
file in the main directory).  I've had to muck around with VC a fair amount 
in the past, so I think I know how to do it.




More information about the Squeak-dev mailing list