Chris Burdess wrote: > Robert Schuster wrote: >>>> Okay this is something that has confused me. classpath seems to have a >>>> dependency on jamvm, but jamvm seems to have a dependency on >>>> classpath. How is this not circular? >>>> >>> It is circular. Such is life with Java (OpenJDK also needs a JDK to >>> compile FWIW). To bootstrap, you can use gcj/gij to run ecj. Many >>> distros (e.g. debian) ship with a native version of ecj that runs >>> using gcj. >> The completely self-hosting GNU Classpath and Cacao/JamVM recipes in >> OpenEmbedded do exactly that: >> >> jikes 1.21 -> classpath 0.93 -> cacao 0.98 or jamvm 1.5.0 -> ecj -> >> classpath 0.9x (x >= 5) -> cacao 0.98+hg20071001 (or newer) > > This is completely bonkers. We need to have a working java 1.5 compiler > without a dependency on a JVM. Just like we need to be able to build a C compiler without a C compiler, right? It's the same with C and with Ada. In the gcc trunk, we include the precompiled class files to solve this for gcj. Andrew.