Le 10/09/2009 02:03, Jochen Theodorou a écrit :
> Rémi Forax schrieb:
> [...]
>    
>> Jochen, I perhaps understand why it doesn't work for you,
>> you don't need only the VM but also the java.dyn classes,
>> because the version given with jdk7 binaries is really outdated.
>>
>> This means you have to compile the jdk too.
>>      
> I think the problem is partially because it seems that the davinci build
> just copies over files from an existing jdk. Before for example I had a
> java version 7, but a javac version 6, because I did set the ALT_BOOTDIR
> to a jdk6. For building the openjdk this is perfectly fine, but davinci
> seems to make things different.
>
> because of that problem I used a different jdk as boot, the openjdk. Now
> I assume, that this gives problems with the BSD port who knows. Ok, so I
> have to build the JDK too... but why doesn't the davinci build do that?
> And how do I go forward from here? first build the patched BSD source
> from and then the davinci part?
>
> bye blackdrag
>
>    

Here is how I compile on linux 32bits:

- I first take the latest jdk binary build (b71)
- I set-up the davinci vm like describe here:
   http://wikis.sun.com/display/mlvm/Building
- But at the end instead of using the makefile which never works for me :)
   I use the shell commands described at the end of the README.txt
    http://hg.openjdk.java.net/mlvm/mlvm/file/tip/README.txt
- and then in sources/hospot/make
     ALT_BOOTDIR=path_to_jdk7_binaries; make
- After that, the VMs are
    client:                    
hotspot/build/linux/export-linux-i586/jre/lib/i386/client
    server:                   
hotspot/build/linux/export-linux-i586/jre/lib/i386/server
    fastdebug-client:   
hotspot/build/linux/export-linux-i586/fastdebug/jre/lib/i386/client
   fastdebug-server:   
hotspot/build/linux/export-linux-i586/fastdebug/jre/lib/i386/server
   and copy the one that interrest me into path_to_jdk7/jre/lib/i386/
   And change path_to_jdk7/jre/lib/i386/jvm.cfg to add them
   -client IF_SERVER_CLASS -server
   -server KNOWN
   -davinci-client KNOWN
   -davinci-server KNOWN
   -debug-client KNOWN
   -debug-server KNOWN
   -hotspot ALIASED_TO -client
   -classic WARN
   -native ERROR
   -green ERROR


- After that, I prepare a jar extracted from the jdk containing java.dyn 
and sun.dyn,
   like this, in davinci/sources/jdk/src/share/classes:
     path_to_jdk7_binaries/bin/javac -J-Xmx1g -d /tmp/davinci_jsr292/ 
-sourcepath . java/dyn/*.java sun/dyn/*.java sun/dyn/*/*.java
   and
    cd /tmp/davinci_jsr292
    jar cvfM ../jdk7-jsr292.jar java/dyn/* syn/dyn/*

Basically, I've now an uptodate JDK7 patched to add JSR292 API.

And to run the fidget example:
   /usr/jdk/jdk1.7.0/bin/java -debug-server 
-Xbootclasspath/p:/tmp/jdk7-jsr292.jar -XX:+UnlockExperimentalVMOptions 
-XX:+EnableInvokeDynamic FidgetDemo

That's all, folks :)
Rémi

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to