This guide describes how to build the Jikes RVM. The first section is an overview of the Jikes RVM build process and this is followed by your system requirements and a detailed description of the steps required to build JikesRVM.
Overview of the build process
Compiling the source code
The majority of the Jikes RVM is written in Java and will be compiled into class files just as with other Java applications. There is also a small portion of the Jikes RVM that is written in C that must be compiled with a C compiler such as gcc. The Jikes RVM uses Ant version 1.6.5 or later as the build tool that orchestrates the build process and executes the steps required in building the Jikes RVM.
Generating source code
The build process also generates Java and C source code based on build time constants such as the selected instruction architecture, garbage collectors and compilers. The generation of the source code occurs prior to the compilation phase.
Bootstrapping the RVM
The Jikes RVM compiles Java class files and produces arrays of code and data. To build itself the Jikes RVM will execute on an existing Java Virtual Machine and compiles a copy of it's own class files into a boot image for the code and data using thw boot image writer tool. The boot image runner is a small C program that loads the boot image and transfers control flow into the Jikes RVM.
The Java class library is the mechanism by which Java programs communicate with the outside world. The Jikes RVM uses the GNU Classpath class library. The developer can either specify a particular version of GNU Classpath to use or they can allow the build process to download and build an appropriate version of the library.