[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
|