I have not packaged the win32 port as an InstallShield(tm) bundle. Instead, I simply made a .zip file (smlnj.zip) that one can unzip to a location of one's choice. There are two things to do "by hand" afterwards: - set the environment variable SMLNJ_HOME to the name of the directory that you unzip'd smlnj.zip into - add %SMLNJ_HOME%\bin to your path [Example: Suppose you unzip'd the .zip file into c:\sml\blume\smlnj Then the value of SMLNJ_HOME should be that, i.e., the moral equivalent of set SMLNJ_HOME=c:\sml\blume\smlnj needs to be carried out. Moreover, you need to add the string ;c:\sml\blume\smlnj\bin to the end of your path variable, i.e., you need to execute path %PATH%;c:\sml\blume\smlnj ] (Under win9x you need to either do this locally using the command prompt before you run sml, or you edit autoexec.bat and reboot. In WinXP you can do it by going to Control Panel->Performance and Maintenance->System-> Advanced->Environment Variables From there it is obvious what needs to be done. Since I don't have access to other versions of win32 (NT, 2000, ...), I am not sure how to do things there. (But I am sure everything is similar to the XP case.) Once the two variables are properly set, you should be able to launch sml/nj by typing "sml" into a command prompt... -------------------------------------------------------------------------- To compile from scratch, assuming Microsoft Visual Studio: - set path to include C compiler bin directory (e.g., path %PATH%;"c:\Program Files\Microsoft Visual Studio\VC98\Bin") - run "vcvars32" command - create the full SML/NJ source hierarchy (most convenient: do a CVS checkout; alternative: unzip and untar all the source archives) - unzip and untar boot.x86-win32.tgz into the root of the source tree - set environment variable SMLNJ_HOME to root of source tree - edit config\targets to one's taste - run config\install.bat