Problems building classpath on MIPS

Manuel Lauss mano at
Tue Mar 17 06:42:00 UTC 2009

On Mon, Mar 16, 2009 at 11:32:10PM +0000, Andrew John Hughes wrote:
> 2009/3/16 Manuel Lauss <mano at>:
> > On Mon, Mar 16, 2009 at 09:13:18AM +0000, Andrew Haley wrote:
> >> Manuel Lauss wrote:
> >>
> >> >
> >> > Did I miss any prerequisites?
> >> > Any help is very much appreciated!
> >>
> >> Well, what are you trying to do? ??GNU Classpath usually has to be
> >> customized for whatever runtime it's going to be running on. ??So,
> >> what runtime will you use?
> >
> > Is that documented somewhere? ??I assume by runtime you mean the VM.
> > In this case, the target is cacaovm (although I'm flexible here)
> >
> >
> >> Andrew.
> >
> > Thanks!
> > ?? ?? ?? ??Manuel Lauss
> >
> >
> CACAO is a good choice, it should work just fine with an uncustomised
> copy of GNU Classpath.
> It seems that configure is defaulting to using gcj to compile and for
> some reason, this is failing.  From your output, it seems like gcj is
> trying to compile more than just the file and is actually
> trying to compile a lot of the GNU Classpath sourcecode during the
> configure process!  The thing to try first is to build outside the
> source directory:
> cd ..
> mkdir classpath-build
> cd classpath-build
> CFLAGS="-O2 -mips32 -msoft-float" ../classpath-0.98/configure
> --prefix=/opt/classpath --build=mipsel-softfloat-linux-gnu
> --host=mipsel-softfloat-linux-gnu --target=mipsel-softfloat-linux-gnu
> --disable-gconf-peer --disable-gtk-peer --disable-plugin --enable-gmp
> --enable-regen-headers --enable-static --enable-shared --disable-rpath
> --with-gnu-ld
> If this works, let us know; it may be that there is a bug with using
> gcj for in-tree compiles.  There was a similar issue for older
> versions of javac.

Yes it does! However the following "gij Test" aborts with value 134;
(it segfaults on a futex() call and is finally killed with SIGIOT).

> More generally, the fact that gcj is being used as the compiler
> implies that it has already failed to find either ecj or javac.  You
> can explicitly set the compiler to use by setting the JAVAC
> environment variable in the same way you set CFLAGS.
> Note that Classpath has the option to just compile the native code.
> You can then build the Java code on any box (you'll probably find this
> easier on an x86 box for example).  Check the --with-glibj option.

Will do.

> As you're on Gentoo, it may be worth checking out the GNU Classpath
> and CACAO ebuilds in the java-overlay (available via layman).  We'd
> appreciate the testing on mips!

I tried the versions in the portage tree initially, but portage has an
unhealthy fixation on x86 (i.e. dependencies and keywords prohibit building
most java stuff on mips).  I'll try to get the overlay you mentioned and
massage things a bit.

Thank you very much!
	Manuel Lauss

More information about the Classpath mailing list