This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: Patch: FYI: Merge in Classpath 0.18
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- To: tromey at redhat dot com
- Cc: Java Patch List <java-patches at gcc dot gnu dot org>
- Date: 28 Sep 2005 22:07:31 +0200
- Subject: Re: Patch: FYI: Merge in Classpath 0.18
- References: <m37jd7scml.fsf@localhost.localdomain>
Tom Tromey <tromey@redhat.com> writes:
> I built and tested this on x86 FC2. Please report any problems and I
> will fix them ASAP.
The 64-bit classpath configure failed on both i386-pc-solaris2.10 and
sparc-sun-solaris2.10:
checking for i386-pc-solaris2.10-g++... /vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/./gcc/xgcc -shared-libgcc -B/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/./gcc -nostdinc++ -L/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/i386-pc-solaris2.10/amd64/libstdc++-v3/src -L/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/i386-pc-solaris2.10/amd64/libstdc++-v3/src/.libs -B/vol/gcc/share/i386-pc-solaris2.10/bin/ -B/vol/gcc/share/i386-pc-solaris2.10/lib/ -isystem /vol/gcc/share/i386-pc-solaris2.10/include -isystem /vol/gcc/share/i386-pc-solaris2.10/sys-include -m64
checking for C++ compiler default output file name... configure: error: C++ compiler cannot create executables
See `config.log' for more details.
configure: error: /bin/ksh '/vol/gnu/src/gcc/gcc-dist/libjava/classpath/configure' failed for classpath
make[1]: *** [configure-target-libjava] Error 1
In config.log, I find
configure:2435: /vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/./gcc/xgcc -shared-libgcc -B/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/./gcc -nostdinc++ -L/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/i386-pc-solaris2.10/amd64/libstdc++-v3/src -L/vol/gcc/obj/gcc-4.1.0-20050928/10-gcc-gas/i386-pc-solaris2.10/amd64/libstdc++-v3/src/.libs -B/vol/gcc/share/i386-pc-solaris2.10/bin/ -B/vol/gcc/share/i386-pc-solaris2.10/lib/ -isystem /vol/gcc/share/i386-pc-solaris2.10/include -isystem /vol/gcc/share/i386-pc-solaris2.10/sys-include -m64 -g -O2 conftest.cc >&5
Undefined first referenced
symbol in file
__gxx_personality_v0 /var/tmp//ccsGOKdd.o
ld: fatal: Symbol referencing errors. No output written to a.out
collect2: ld returned 1 exit status
configure:2438: $? = 1
configure: failed program was:
| /* confdefs.h. */
|
| #define PACKAGE_NAME "GNU Classpath"
| #define PACKAGE_TARNAME "classpath"
| #define PACKAGE_VERSION "0.18"
| #define PACKAGE_STRING "GNU Classpath 0.18"
| #define PACKAGE_BUGREPORT "classpath@gnu.org"
| #define PACKAGE "classpath"
| #define VERSION "0.18"
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:2476: error: C++ compiler cannot create executables
With -v, I find that -lstdc++ isn't linked (which defines
__gxx_personality_v0). Manually rerunning the test with g++ instead of
xgcc helps.
This problem was introduced with the classpath 0.18 merge (last bootstrap on
20050921 was sucessful) by this patch:
2005-08-25 Tom Tromey <tromey@redhat.com>
* configure.ac: Call AC_PROG_CXX.
Cf. http://lists.gnu.org/archive/html/classpath-patches/2005-08/msg00418.html
and http://lists.gnu.org/archive/html/classpath/2005-08/msg00078.html for
background.
Looking in libjava/configure.ac, I found
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
GCC_NO_EXECUTABLES
and tried using this as a fix/workaround in classpath/configure.ac, adding
-I ../../config to Makefile.am so config/no-executable.m4 is found by
aclocal. Unfortunately, while this gets the configure run further, it
fails again with
checking for socket... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
configure: error: /bin/ksh '/vol/gnu/src/gcc/gcc-dist/libjava/classpath/configure' failed for classpath
make[1]: *** [configure-target-libjava] Error 1
For the moment, I've disabled AC_PROG_CXX again since I don't know how to
fix this for real.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University