Getting Started: Building and Running VMKit

This page gives you the shortest path to checking out vmkit and demos a few options. This should get you up and running with the minimum of muss and fuss. If you like what you see, please consider getting involved with the vmkit community.

A word of warning

While this work aims to provide a fully functional JVM and CLI runtime, it is still early work and is under heavy development.

Some of the more notable missing pieces in the CLI runtime are:

  1. Support for arithmetic overflow.
  2. Support for CLI object finalization semantics.
  3. Thread support.

Some of the common missing pieces in vmkit/llvm are:

  1. Hotspot-like virtual machine (e.g mixed interpretation/compilation).

Building vmkit / working with the code

If you would like to check out and build the project, the current scheme is (if you only want the JVM, you can skip the Pnet part. If you only want the CLI VM, you can skip the GNU Classpath part):

  1. Checkout and build LLVM from SVN head:
  2. Download GNU Classpath 0.97.2:
  3. Download PNet 0.8.0:
  4. Download PNetlib 0.8.0:
  5. Checkout vmkit:
  6. Configure vmkit:
  7. Build vmkit:
  8. Try it out: (assuming vmkit/Debug/bin is in your path)