hotspot building

Ingo Weinhold ingo_weinhold at gmx.de
Fri Mar 26 13:10:28 PDT 2010


On 2009-12-21 at 23:18:19 [+0100], Andrew Bachmann 
<andrewbachmann at gmail.com> wrote:

Having seen no commits since, I thought I check out things and see, if I can 
be of any help...

> Sorry for the lull in activity recently.  My hard drive got corrupted
> and I had a house guest, so things got delayed.  But now I'm happy to
> announce that I've managed to get the libjvm.so and related files
> building completely on Haiku.  Here's a blog entry detailing the steps
> to reproduce what I've done so far:
> 
> http://www.haiku-os.org/blog/andrewbachmann/2009-12-21_openjdk_hotspot_libjvmso_built_haiku

Unfortunately when following the build instructions (with modified working 
directory and bootdir paths) in the "make" step I reproducibly encounter a 
crash of the compiler. I originally tried a current Haiku trunk revision, 
but the same happens with the alpha 1 release.

The crash happens when compiling 
"hotspot/src/share/vm/compiler/abstractCompiler.cpp" (or after touching the 
output file the following source) in cc1plus, function linemap_lookup(). I 
tracked the problem as far as I could without building gcc myself. 
Apparently when loading the preprocessed header file 
incls/_precompiled.incl.gch cc1plus also updates (reads) a global variable 
line_table whose value is passed later to linemap_lookup(), leading to the 
crash.

Since the blog post doesn't mention any such problem, I'm wondering why I 
can reproduce it reliably both under real hardware and emulation. So far 
I've used the same working directory for all attempts, so I wouldn't rule 
out that a file corruption is somehow to blame, but I don't quite see how a 
corrupt header file would make it through the header precompilation process 
and even lead to a corrupt output file. Will try a fresh checkout anyway. 
Any other hints are welcome.

> Next I am working on getting the jdk make files in order and adding in
> the haiku awt and other support classes.  In the past, we used jikes
> to compile these classes.  Unfortunately, even the most recent version
> of jikes is now five years old and can't handle the generics that are
> around now.  So, we need to use a different solution.
> 
> I know Michael was looking into this issue a little while ago.  Also,
> I believe we can use remote hosting to compile the files, as well.

Isn't it possible to just compile the java source files once on another 
platform and use the generated class files (or jars) under Haiku? The only 
thing needed initially is to bootstrap the JVM and the compiler. Thereafter 
you have a native compiler. Or do I miss something?

CU, Ingo


More information about the haiku-port-dev mailing list