[Berlin-wireless] Java Frage...

Robert Schuster theBohemian
Sa Mär 8 17:45:15 CET 2008


Sven-Ola Tücke schrieb:
> Hey,

> Freenet compiled unter ecj. Soweit ok. Einen freien JIT gibts offenbar nicht. 
Doch, die cacao JVM hat einen - auch für MIPS.

> Mit gcj kann man nun native code aus *.java erzeugen (gcj zieht dabei 
> offenbar auch java-bytecode aus dem classpath-jars auf die Zielplatform in 
> die binaries).
GCJ kann das auf zwei Arten:
 - C++ ABI:
 Dann hat man hinterher ein executable. Das eignet sich für
Standalone-Programme, die nicht Code nachladen.

- BC ABI:
 Dabei liegt neben dem Bytecode ein nativer AOT-Code (Ahead Of Time) vor
und wir mit kleinen DB-Dateien angesprochen. GCJ sucht dann vor
Ausführung einer Methode, ob es die auch als native Version gibt und
nimmt diese falls vorhanden. Ansonsten wird interpretiert (GCJ hat nur
einen Interpreter).

> Und jetzt die Frage: Wie kompliziert isses, ein kompilierfaehiges Java in ein 
> Native-Binary rueberzuziehen? Eins mit allen Sauereien (z.B. JNI). Und bringt 
> das was? Zielpattform: MIPS. 64-128 Mb RAM.
Ich würde Classpath und Cacao crosscompilieren. Das geht am leichtesten.

Problem mit Cacao ist, dass es gerade kein offizielles Release gibt. Du
müsstest eine Snapshot aus ihrem Mercurial Repository benutzen.

GCJ ist super - aber nichts was man in 20 Minuten bäckt. ;)

Gruß
Robert

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 252 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.berlin.freifunk.net/pipermail/berlin/attachments/20080308/046a3b7e/attachment.pgp>



Mehr Informationen über die Mailingliste Berlin