Re: Still Problem with GNU-Classpath 0.96.1 on StrongARM
On 10/23/07, Robert Schuster <[EMAIL PROTECTED]> wrote: > Hi, > > Robert Lougher schrieb: > > Hi Vladimir, > > > > On 10/23/07, Vladimir Nikolov <[EMAIL PROTECTED]> wrote: > >> Hi, > >> > >> I have still problems to compile the GNU-Classpath 0.96.1 on the > >> StrongARM machine. > >> Once again, I would like to use it together with the JamVM 1.4.5, since > >> both support now Java Annotations and Generics. > >> > If I understand this[0] page right EABI is not supported on StrongARM > CPUs ... at least not with custom GCC patches. > The ARM APCS has provisions for ARMv4, including StrongARM. If its recommendations are followed, it is compatble with the standard. Rob. ARM APCS: http://www.arm.com/pdfs/aapcs.pdf > Regards > Robert > > [0] - http://wiki.debian.org/ArmEabiPort > > > > > > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.6 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iD8DBQFHHmT1G9cfwmwwEtoRCBkBAJ0fhXqvxr85+mCZATa6iI/EG/qSqACfQ1Ys > NQz7ozXrW+EJQW1Pz9YPR3c= > =5heR > -END PGP SIGNATURE- > > > >
Re: Still Problem with GNU-Classpath 0.96.1 on StrongARM
Hi Robert, thank you for your replies and for the support. Can you run your ARM gcc like this: gcc -E -dM - < /dev/null This will show all the predefined macros. If your ARM system is configured to use EABI, there should be __ARM_EABI__ somewhere in that. There is no "__ARM_EABI__" option on my machine. This would mean, that my system is not configured to use EABI and the standard JamVM <= 1.4.5 sould function ??? On second thoughts, it's easier to send you a distribution based on the next release of JamVM (jamvm-1.5.0.tar.gz, which I've had to rename to get round gmail). Oh cool, thank you! This contains JamVMs classes pre-built. So you should be able to compile it on your ARM system without the need of a Java compiler. The resultant binary should run with Classpath-0.92 to get you a working ecj. So, after compilation of the Classpath-0.96.1 with ecj and JamVM 1.5.0, I should be able to reconfigure the JamVM again to use the newly compiled Classpath and to have full support of generics and annotations. It would be great if it succeedes ... However, it is arguable if the commented problem occures once again, since EABI support seems not to be the source for it. I'll try to get it work with the new JamVM; if it does not function I will post again to the mailing list. Thank you for your help. Vladimir
Re: Still Problem with GNU-Classpath 0.96.1 on StrongARM
Hi, Robert Lougher schrieb: > Hi Vladimir, > > On 10/23/07, Vladimir Nikolov <[EMAIL PROTECTED]> wrote: >> Hi, >> >> I have still problems to compile the GNU-Classpath 0.96.1 on the >> StrongARM machine. >> Once again, I would like to use it together with the JamVM 1.4.5, since >> both support now Java Annotations and Generics. >> If I understand this[0] page right EABI is not supported on StrongARM CPUs ... at least not with custom GCC patches. Regards Robert [0] - http://wiki.debian.org/ArmEabiPort signature.asc Description: PGP signature signature.asc Description: OpenPGP digital signature
Re: Still Problem with GNU-Classpath 0.96.1 on StrongARM
Hi Vladimir, On 10/23/07, Vladimir Nikolov <[EMAIL PROTECTED]> wrote: > Hi, > > I have still problems to compile the GNU-Classpath 0.96.1 on the > StrongARM machine. > Once again, I would like to use it together with the JamVM 1.4.5, since > both support now Java Annotations and Generics. > > Here are some informations about the current configuration I use: > - StrongARM-110 (v4l) (233 MHz, 256 MB RAM) > - Linux Version 2.6.18y, GCC Version 4.1.2, Debian 4.1.1-21 First of all, I'm sorry you're seeing so many problems. One thing you do not mention is whether your ARM machine is using OABI or EABI. Recent distributions of ARM Linux have moved to EABI, and programs that do not handle this will not work correctly. BTW, I get the impression that you're running all of this on the ARM as host, rather than cross-compiling. Can you run your ARM gcc like this: gcc -E -dM - < /dev/null This will show all the predefined macros. If your ARM system is configured to use EABI, there should be __ARM_EABI__ somewhere in that. Now the problem. JamVM <= 1.4.5 does not support EABI! Of course, even if you are using EABI, I don't know if this is the cause of the error below (it is an assertion failure in GNU Classpath JNI code), but it could be... I have since added EABI support to JamVM, and this is available via CVS : http://developer.berlios.de/cvs/?group_id=6545 Normally, a distribution of JamVM comes with its Java-classes pre-compiled (to stop bootstrap issues). The CVS tree does not contain this. You will either need to install Jikes on the ARM system to build them, or prepare a distribution on another machine with jikes, ecj or gcj available : ./autogen.sh make dist Hope this helps, Rob. > 2.) make - produces the following error: > > Making all in lib > make[1]: Entering directory > `/home/vladimir/code/src/vm/classpath-0.96.1/lib' > true > top_builddir=.. top_srcdir=.. /bin/sh ./gen-classlist.sh standard > Adding java source files from srcdir '..'. > Adding java source files from VM directory ../vm/reference > /usr/bin/ecj -1.5 > -warn:-deprecation,serial,typeHiding,unchecked,unused,varargsCast > -proceedOnError -bootclasspath '' -classpath > ../vm/reference:..:../external/w3c_dom:../external/sax:../external/relaxngDatatype:../external/jsr166:.:: > -d . @classes > jamvm: mprec.c:107: _Jv_Balloc: Assertion `i < 16' failed. > make[1]: *** [compile-classes] Aborted > make[1]: Leaving directory > `/home/vladimir/code/src/vm/classpath-0.96.1/lib' > make: *** [all-recursive] Error 1 > > Does anyone have any ideas? > > Best regards, > Vladimir >
Still Problem with GNU-Classpath 0.96.1 on StrongARM
Hi, I have still problems to compile the GNU-Classpath 0.96.1 on the StrongARM machine. Once again, I would like to use it together with the JamVM 1.4.5, since both support now Java Annotations and Generics. Here are some informations about the current configuration I use: - StrongARM-110 (v4l) (233 MHz, 256 MB RAM) - Linux Version 2.6.18y, GCC Version 4.1.2, Debian 4.1.1-21 - as standard JVM I use JamVM 1.4.4 with GNU-Classpath 0.92 ==> the reason for that is that ECJ does not function correctly with the standard installed GCJ/GIJ (version 4.1.2) - The JamVM 1.4.4 shall run the ECJ (v_677_R32x, 3.2.1) for to compile the GNU-Classpath 0.96.1 1.) ./configure --prefix=... --disable-plugin --with-ecj ... runs okay! 2.) make - produces the following error: Making all in lib make[1]: Entering directory `/home/vladimir/code/src/vm/classpath-0.96.1/lib' true top_builddir=.. top_srcdir=.. /bin/sh ./gen-classlist.sh standard Adding java source files from srcdir '..'. Adding java source files from VM directory ../vm/reference /usr/bin/ecj -1.5 -warn:-deprecation,serial,typeHiding,unchecked,unused,varargsCast -proceedOnError -bootclasspath '' -classpath ../vm/reference:..:../external/w3c_dom:../external/sax:../external/relaxngDatatype:../external/jsr166:.:: -d . @classes jamvm: mprec.c:107: _Jv_Balloc: Assertion `i < 16' failed. make[1]: *** [compile-classes] Aborted make[1]: Leaving directory `/home/vladimir/code/src/vm/classpath-0.96.1/lib' make: *** [all-recursive] Error 1 Does anyone have any ideas? Best regards, Vladimir Robert Schuster schrieb: Hi, Whats wrong with ecj? Is it not supported for ARMs? Do you know any other compiler for ARM which I could use instead of ecj? ecj is written in Java. There is no ARM specific code in it. You should check your VM instead. Regards Robert