Bonjour
Etant sous linux/ppc, je n ai pas droit à un JDK de chez sun, et j aimerais essayer gcj.
J’utilise debian/sid, et j ai donc installé gcj.
J essaie de compiler un bete fichier java et :
“gcj: libgcj.spec : Aucun fichier ou répertoire de ce type”
edit:
Apparement c est un bug, il faut copier le fichier
/usr/lib/gcc-lib/powerpc-linux/3.3.5/specs au meme endroit sous le nom libgcj.spec
Gcj marche enfin, mais quand j essaie de compiler :
[cpp]axel@cube:~$ gcj Essai.java
/usr/lib/gcc-lib/powerpc-linux/3.3.5/…/…/…/crt1.o(.rodata+0x4):…/sysdeps/powerpc/powerpc32/elf/start.S:46: undefined reference to main' /tmp/ccFDkV5e.o(.text+0x20): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to _Jv_InitClass' /tmp/ccFDkV5e.o(.text+0x26): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::class$' /tmp/ccFDkV5e.o(.text+0x2a): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::class$' /tmp/ccFDkV5e.o(.text+0x66): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::class$' /tmp/ccFDkV5e.o(.text+0x6a): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::class$' /tmp/ccFDkV5e.o(.text+0x6c): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to _Jv_InitClass' /tmp/ccFDkV5e.o(.text+0x7a): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::out' /tmp/ccFDkV5e.o(.text+0x7e): In function
Essai::main(JArrayjava::lang::String*)’:
: undefined reference to java::lang::System::out' /tmp/ccFDkV5e.o(.text+0xd8): In function
Essai::Essaiin-charge’:
: undefined reference to java::lang::Object::Object[in-charge]()' /tmp/ccFDkV5e.o(.data+0x38): undefined reference to
java::lang::Object::finalize()’
/tmp/ccFDkV5e.o(.data+0x3c): undefined reference to java::lang::Object::hashCode()' /tmp/ccFDkV5e.o(.data+0x40): undefined reference to
java::lang::Object::equals(java::lang::Object*)’
/tmp/ccFDkV5e.o(.data+0x44): undefined reference to java::lang::Object::toString()' /tmp/ccFDkV5e.o(.data+0x48): undefined reference to
java::lang::Object::clone()’
/tmp/ccFDkV5e.o(.data+0x58): undefined reference to vtable for java::lang::Class' /tmp/ccFDkV5e.o(.data+0x6c): undefined reference to
java::lang::Object::class$’
/tmp/ccFDkV5e.o(.eh_frame+0x11): undefined reference to `__gcj_personality_v0’
collect2: ld a retourné 1 code d’état d’exécution
[/cpp]
Est ce un bug du compilateur / du paquet debian ? ou j ai oublié d installer quelque chose ?
J a juste installé : gcj et gcjlib-common
Le code du fichier Essai.java
class Essai
{
public static void main(String[] args)
{
System.out.println("ok");
}
}