DLL access on Windows

Todd Fleming todd at flemingcnc.com
Sun Jan 9 14:44:37 PST 2005


Shaping wrote:

> The 'make get-alpha' does not work.  make does not work on my system.  
> I have no VS2003 (because I have no doc for it).  I have 2005 Express 
> beta and the XP SP2 SDK.  Doesn't make default to nmake.exe on 
> Windows?  Anyway, there is no windows target in Makefile (in 
> \windows), so nmake copied to the \windows directory didn't work either.

Ah. ok. I forgot that not everyone is using MinGW/MSys. I also forget 
that not everybody has wget installed. The get-alpha target in the 
top-level Makefile is for Linux and for MinGW/MSys. It invokes wget to 
fetch the files from the website.

I use MingGW/MSys for CVS and for "make get-alpha". I use VS.Net 2003's 
GUI to build and debug. I had GCC building Slate at one point, but 
debugging with GDB is a nightmare, even with the various GUI wrappers 
available.

> I then loaded the .sln and rebuilt in VS.  The build worked.  I ran 
> slate little.image to bootstrap.  (I don't understand why this 
> little.image is special.  Can someone explain?)  I saved the image as 
> image.work, restarted that image, copied the DLL example, and it 
> worked!  Cool.

The layout of structures in the image must match the layout of the VM's 
C structures. The image also invokes primitives in the VM; these must 
match. My patch added an argument to a primitive. An old image tries to 
call the primitive with too few arguments. kaboom.

Todd




More information about the Slate mailing list