This is the mail archive of the
java-discuss@sourceware.cygnus.com
mailing list for the Java project.
Testing GCJ in Linux RedHat!
- To: Java GCJ Mail List <java-discuss at sourceware dot cygnus dot com>, RTEMS-LIST <rtems-users at oarcorp dot com>
- Subject: Testing GCJ in Linux RedHat!
- From: Oscar Martinez de la Torre <omt at wm dot estec dot esa dot nl>
- Date: Thu, 24 Feb 2000 18:15:20 +0100
- CC: Jiri Gaisler <jgais at ws dot estec dot esa dot nl>, Stig Mejnertsen <smejnert at estec dot esa dot nl>
- Organization: European Space Agency
Hello!
I'm trying to run JAVA in ERC32 (a space microprocessor like "sparc")
I'm trying Kaffe + RTEMS (A RTOS which works on ERC32)
But as I'm finding lots of problems in it (any suggestions is welcome)
I'm also trying GCJ approach!
There is a RPM with gcj but no libgcj:
sparc-rtems-gcj-gcc2.95.2newlib1.8.2-2.i386.rpm
But what I have got is this:
/opt/rtems/bin/sparc-rtems-gcj HelloWorldApp.java
/opt/rtems/sparc-rtems/bin/ld: warning: cannot find entry symbol _start;
defaulting to 00010094
/tmp/ccAPF0Ls.o: In function `HelloWorldApp::HelloWorldApp(void)':
/home/omt/GCJ/HelloWorldApp.java(.text+0x10): undefined reference to
`java::lang::Object::Object(void)'
/tmp/ccAPF0Ls.o: In function
`HelloWorldApp::main(JArray<java::lang::String *> *)':
/home/omt/GCJ/HelloWorldApp.java:2: undefined reference to
`_Jv_InitClass'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`_CL_Q34java4lang6System'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`_CL_Q34java4lang6System'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`_Jv_InitClass'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`java::lang::System::out'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`java::lang::System::out'
/tmp/ccAPF0Ls.o: In function `global constructors keyed to
HelloWorldApp::HelloWorldApp(void)':
/home/omt/GCJ/HelloWorldApp.java(.text+0x90): undefined reference to
`_Jv_RegisterClass'
/tmp/ccAPF0Ls.o: In function
`HelloWorldApp::main(JArray<java::lang::String *> *)':
/home/omt/GCJ/HelloWorldApp.java:2: undefined reference to
`java::lang::Object::clone(void)'
/home/omt/GCJ/HelloWorldApp.java:2: undefined reference to
`java::lang::Object::equals(java::lang::Object *)'
/home/omt/GCJ/HelloWorldApp.java:2: undefined reference to
`java::lang::Object::finalize(void)'
/home/omt/GCJ/HelloWorldApp.java:2: undefined reference to
`java::lang::Object::hashCode(void)'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`java::lang::Object::toString(void)'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`java::lang::Class virtual table'
/home/omt/GCJ/HelloWorldApp.java:3: undefined reference to
`_CL_Q34java4lang6Object'
collect2: ld returned 1 exit status
Also, it seems that libgcj is no so easy to port and crosscompile!
I have also tried GCJ in a RedHat Linux i386 machine by converting deb
to rpm with alien!
gcj-2.95.2-7.i386.rpm gcj_2.95.2-6.deb libgcj0-2.95.1-4.i386.rpm
libgcj0_2.95.1-3.deb
Also I had to set a suitable location for some libraries and files...
At the end, I have got this:
gcj HelloWorldApp.java
/usr/lib/crt1.o(.text+0x18): undefined reference to `main'
/usr/lib/gcc-lib/i386-linux/2.95.2/libgcj.so: undefined reference to
`__rethrow'
/usr/lib/gcc-lib/i386-linux/2.95.2/libgcj.so: undefined reference to
`__start_cp_handler'
Any suggestions, experiences using GCJ / libgcj or
also running Java on RTEMS will be welcome!
Thanks,
Oscar
-
Óscar Martínez de la Torre - Office Phone: +31-(0)71.565.5844
Telecommunication Engineer at Universidad Politécnica de Madrid
European Space Agency ESTEC/TOS/EMS Erasmus Building Office Nb212
Keplerlaan,1 - NL 2201 AZ - Noordwijk ZH - The Netherlands
Mail: omt@wm.estec.esa.nl - Personal Mail: omt@etsit.upm.es