123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- Scheme 48 Windows port
- ----------------------
- Starting with version 1.3, Scheme 48 has a native Windows port, which
- works on Windows NT 4.0 and above (including Windows 2000, XP and
- Vista, but not Windows 95, Windows 98, or Windows ME).
- Specifically, the following caveats apply to the Windows port:
- o The "old-style" interface to loading external code dynamically
- doesn't work. (But the new interface works---see doc\news.txt and
- the documentation.)
- o The Posix libraries don't work (and probably never will, at least
- not in the current form).
- Installing Scheme 48 from the installer
- ---------------------------------------
- To install Scheme 48, download the .msi file and double-click on it.
- This requires Windows Installer version 2.0 or greater to work.
- Building Scheme 48 from source
- ------------------------------
- The Scheme 48 developers build the VM using Microsoft Visual C++
- 2010 Express Edition, which can be downloaded for free from the
- Microsoft web site.
- In order to build Scheme 48 from scratch, the following steps are
- needed:
- - install a recent regular release of Scheme 48
- - generate the various Unicode tables via build\generate-unicode-info.bat (see below)
- - generate the initial image via build\build-initial-image.bat (see below)
- - generate the C headers via build\generate-c-header.bat (see below)
- - generate the C code for the VM and the BIBOP GC (see below)
- - build the VM itself (see below)
- - build scheme48.image via build\build-usual-image.bat (see below)
- - generate a batch file to run Scheme 48
- - run the test suite via build\check.bat
- To run the various batch files, you should be sitting in a shell in
- the root of the Scheme 48 source-code hierarchy.
- If you have Boo (or are willing to download it), you can use
- build\BuildS48.boo to perform the above steps with far less typing.
- Read the comments at the beginning of BuildS48.boo for instructions.
- You can then start Scheme 48 by saying:
- scheme48
- build\generate-unicode-info.bat
- This builds the Unicode tables from source.
- build\generate-unicode-info.bat "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48"
- build\build-initial-image.bat
- This builds build\initial.image-32 from source.
- It requires a command-line argument specifying how to start up a
- Scheme 48 REPL.
- Before running it, you need to generate build\filenames.bat via
- <Scheme 48> -a batch < build\extract-filenames.scm
- where <Scheme 48> starts up a Scheme 48 REPL, for example
- "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48" -a batch < build\extract-filenames.scm
- build\build-initial-image.bat "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48"
- build\generate-c-header.bat
- This generates the c\scheme48.h header file needed for compiling
- various VM extensions.
- It requires a command-line argument specifying how to start up a
- Scheme 48 REPL.
- Example:
- build\generate-c-header.bat "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48"
- build\compile-vm.bat
- build\compile-bibop-gc.bat
- This builds the VM C sources from Scheme.
- It requires a command-line argument specifying how to start up a
- Scheme 48 REPL.
- build\compile-vm.bat "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48"
- build\compile-bibop-gc.bat "C:\Program Files\Scheme 48\Scheme 48 1.8\scheme48"
- building the VM and dependent DLLs:
- To compile the VM, load the scheme48.sln "solution" file into Visual
- C++, choose a configuration ("Win32 Debug" or "Win32 Release") and
- build the entire solution.
- build\build-usual-image.bat
- This generates the default scheme48.image from build\initial.image.
- It requires six command-line arguments:
- - the root directory of the Scheme 48 sources
- *with a trailing backslash*
- - the full path of the installed scheme/ subdirectory of the Scheme
- 48 sources
- - the full path of the directory containing external code
- - the name of the image file to be generated
- - the name of the VM executable
- - the filename of the initial image
- Example (supposing the Scheme 48 root directory sits at c:\src\s48):
- build\build-usual-image.bat ".\" "C:\src\s48\scheme" "C:\src\s48" scheme48.image scheme48vm.exe build\initial.image-32
- build\generate-go.bat
- This generates a batch file to start Scheme 48.
- It requires three command-line arguments:
- - the name of the batch file to produce
- - the full path of the VM executable
- - the full path of the image file
- Example (supposing the Scheme 48 root directory sits at c:\src\s48):
- build\generate-go.bat scheme48.bat "c:\src\s48\scheme48vm.exe" "c:\src\s48\scheme48.image"
- build\check.bat
- This runs the test cases that should succeed on Windows.
- It requires a command-line argument specifying the Scheme 48
- executable to check.
- Example (using scheme48.bat generated by build\generate-go.bat above):
- build\check.bat "C:\src\s48\scheme48.bat"
|