Building Slate VM with LCC-Win32 under Windows XP

Brian T. Rice water at tunes.org
Sun Aug 1 18:52:32 PDT 2004


Thanks for the full bug report. It looks like I'll need to make sure 
that ConnectionFailed for files is described correctly, because that's 
what you're seeing. It used to be File NotFound, but I removed that 
since it's not generic and we should be able to signal that by doing a 
File exists call later.

Paul Dufresne wrote:

> I have tried to used the alpha version of July 31, to make Slate.exe
> run little.image on Windows XP. To try it, I have tried to generate a
> new VM. But I got this:
> ===
> ...
> Parsing bootstrap/debugger.slate
> Parsing bootstrap/file.slate
> Parsing bootstrap/print.slate
> Parsing bootstrap/mobius/types.slate
> Parsing bootstrap/mobius/syntax/syntax.slate
> The following condition was signaled:
> Undescribed condition
> 
> The following restarts are available:
> 0)      Inspect a stack frame
> 1)      Abort evaluation of expression
> 2)      Quit Slate
> Debug [0..2]:
> ===

This is after VM generation. This is bootstrap image-generation. Just 
FYI, you do not need to do this unless you install new VM primitive 
methods and need to build an image for that VM.

> The computer is an IBM PC 300GL, with XP
> with 64 Mb of memory.
> 
> The ingredients I used was:
> -lcc-win32 version 3.8
> -slate downloads/alpha directory made July 31
> -slate-current.tar.gz downloaded August 1, at 14h49 (Greenwich -4HRS)
> -7-zip (just to decompress slate-current.tar.gz)
> 
> Now the details of how I made it:
> 1. downloaded and installed lcc-win32
>  1.1 Got to http://www.cs.virginia.edu/~lcc-win32/
>  1.2 Downloaded lccwin32.exe and manual.exe
>  1.3 Executed them, keeping default values
> 2. Generated Slate.exe
>  2.0 Created a directory c:\sla
>  2.1 Extracted slate-current.tar.gz in c:\sla with 7-Zip
>  2.2 Made a directory tmp_slate
>  2.3 copied vm.c, vm.h from alpha directory to tmp_slate
>   Copied also little.image, but it was probably not needed
>  2.4 copied file.h, image.h, env.h, boot.c, file.c from alpha dir
>    to C:\sla\slate-current\bootstrap\mobius\vm directory
>  2.5 c:\lcc\bin\lc.exe -ansic -errout=Slate.err *.c -o Slate.exe
>   2.5.1 Slate.exe was 75696 bytes long
>  2.6 looked Slate.err, and saw just warnings
> 3. Used 'Slate.exe little.image' and saved an image after
> doing "load: 'bootstrap/mobius/init.slate'."
>  3.1 Copied Slate.exe from tmp_slate to sla\slate-current
>  3.2 Copied little.image from alpha directory to sla\slate-current
>  3.3 Open a command window
>  3.4 cd \sla\slate-current
>  3.5 Slate.exe little.image
>    3.5.1 growing 4701576 bytes
>  3.6 load: 'bootstrap/mobius/init.slate'.
>  3.7 SaveImageNamed: 'prebuild.image'.
> 4. Stop, and loaded back the saved image (was just searching how to
> continue), this step is useless
>  4.1 somehow quitted
>  4.2 Slate.exe prebuild.image
> 5. VM generateVM: 'slate'.
> 6. VM buildImage: 'slate.image' &littleEndian: True.
> It is at this point that I got Undescribed condition described at
> the beginning of this message.
> 
> Now, if I try to Debug:
> ===
> Debug [0..2]:
> 0
> Select a stack frame [0..]: 0
> [invokeDebugger]
> 
> 0: ("ConnectionFailed" resource: ("File" handle: Nil. readStream: Nil. 
> writeStre
> am: Nil. locator: ("AbsoluteLocator" ...).
>                mode: ("Oddball" ...). traits: ("File" ...)). handlers: 

This is the relevant issue; basically calling a file-open primitive 
returned a Nil handle, for some reason. This is not happening for me or 
anyone else using Windows, so my first recommendation is to see which 
file is resulting in this, and whether there are messed-up paths or such.

The error apparently occurred for the last filename printed, the file 
'bootstrap/mobius/syntax/syntax.slate'. Check to make sure that it is 
present, just in case. You can also try opening it manually.

Also, it is generally intended that "make" or whatever compile script 
you do perform is executed in the ~slate/ directory (root of CVS / 
tarball checkout). More specifically, the c-sources in 
bootstrap/mobius/VM/ need to be accessible immediately. I don't know if 
this is causing your problem, but if it's the case, then the primitives 
wouldn't be compiled correctly.

> Maybe I'll add a comment about step 2, 2.6 in an other message

That'll be unnecessary.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: water.vcf
Type: text/x-vcard
Size: 208 bytes
Desc: not available
Url : /archives/slate/attachments/20040801/1fc6a3be/water.vcf


More information about the Slate mailing list