sh-elf build failure on mainline]

Andrew Haley aph@redhat.com
Thu Jun 15 12:54:00 GMT 2006


David Ayers writes:

 > I must admit, that I'm a bit confused.  After putting together a
 > combined tree to build a cross compiler I configured with:
 > 
 > ../combined/configure --target=sh-elf
 > --prefix=/home/ayers/src/gcccross/install-sh-elf --with-newlib
 > --disable-gdbtk
 > 
 > And it logs:
 > ...
 > 
 > The following languages will be built: c,c++,java,objc
 > *** This configuration is not supported in the following subdirectories:
 >      target-libmudflap target-libgomp target-libgloss target-libffi
 > target-zlib target-libjava target-libada gnattools target-libgfortran
 >     (Any other directories should still work fine.)
 > 
 > So it seems that java is an enabled language but without the runtime
 > 'libgcj' target libraries: target-libffi, target-zlib, target-libjava
 > 
 > The fact that java is still in enable_languages is what is stopping the
 > above code from removing target-boehm-gc.
 > 
 > After I re-add target-boehm-gc to the 'libgcj' variable I get:
 > 
 > The following languages will be built: c,c++,java,objc
 > *** This configuration is not supported in the following subdirectories:
 >      target-libmudflap target-libgomp target-libgloss target-libffi
 > target-boehm-gc target-zlib target-libjava target-libada gnattools
 > target-libgfortran
 >     (Any other directories should still work fine.)
 > 
 > Deductions:
 > 'libgcj' is not needed to build the 'java' front-end.
 > 'libgcj' is merely needed to build the "java-runtime"

Right.

 > And here we happen to build the java front-end yet not the runtime.
 > 
 > Is this a useful configuration?  i.e. should try to:
 > a) disable the 'java' front-end for sh-elf
 > b) change the logic of my case statement to evaluate libgcj instead of
 > enabled_languages

I don't believe that anyone has ever managed to use the gcj front-end
without libgcj.  However, it is in theory possible to build them
separately, so I'm reluctant to disallow building the compiler on its
own.

libffi and target-boehm-gc are required by the libgcj runtime, not by
the gcj front-end.

Andrew.



More information about the Gcc-patches mailing list