Harmonia Build Instructions for Windows

  1. Create a c:\harmonia folder.
  2. Install Needed Programs:
    1. Install Visual Studio.NET 2003 (earlier versions will not compile our code properly.)
    2. Get the Java SDK
    3. Save and uncompress the latest garbage collector into c:\harmonia\
      Rename the garbage collector directory to c:\harmonia\gc
    4. Save and unzip extrawindowsfiles.zip into c:\harmonia (Make sure you are using a native Windows unzipper, not Cygwin; otherwise, .dll do not get proper execute permissions set.)
  3. Goto c:\harmonia\gc\include\ and copy to C:\harmonia\auxiliary\include\gc (you need to make that gc directory)
    1. gc.h
    2. gc_config_macros.h
    3. gc_allocator.h
  4. Build the Garbage Collector DLL
    1. Load Visual Studio's Command Prompt: Start:Program Files:Microsoft Visual Studio .NET 2003:Visual Studio .NET Tools:
      Visual Studio .NET 2003 Command Prompt
    2. Goto c:\harmonia\gc
    3. Check that NT_THREADS_MAKEFILE defines ATOMIC_UNCOLLECTABLE (look for /D ATOMIC_UNCOLLECTABLE) - not all releases of the GC enable it by default.
    4. Run nmake /F "NT_THREADS_MAKEFILE" CFG="gc - Win32 Release"
  5. Add Java to your path
    1. Run the solution Harmonia.sln from c:\harmonia\src
    2. Go to Tools, Options, Projects, VC++ Directories (Executable Files)
      1. Add c:\j2sdk1.4.2\bin
    3. Go to Tools, Options, Projects, VC++ Directories (Include Files)
      1. c:\j2sdk1.4.2\include
      2. c:\j2sdk1.4.2\include\win32
  6. From inside Visual Studio .Net, under solution Harmonia, press CTRL+SHIFT+B to compile harmonia.
  7. All DLLs compiled will be copied to the c:\harmonia\build directory in a subdirectory named for the build configuration you made (Debug-GC or Release-GC).