Balaji,
currently configuring the non-default libcilkrts multilib fails on
Solaris/x86 like this:
configure:3139: checking whether the C++ compiler works
configure:3148: ./a.out
ld.so.1: a.out: fatal:
/var/gcc/regression/trunk/10-gcc/build/./gcc/libgcc_s.so.1: wrong ELF class:
ELFCLASS32
/vol/gcc/src/hg/trunk/local/libcilkrts/configure[3150]: 26758 Killed
configure:3152: $? = 137
configure:3159: error: in
`/var/gcc/regression/trunk/10-gcc/build/i386-pc-solaris2.10/amd64/libcilkrts':
configure:3161: error: cannot run C++ compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
This happens because there's no installed amd64 libgcc_s.so.1 on the
system, and toplevel Makefile only sets LD_LIBRARY_PATH for the default
multilib. Initially, I thought that there were something special going
on, but it turned out that other runtime libs containing C++ code don't
have this problem, which can easily be cured by the following patch. It
allowed a C++-only i386-pc-solaris2.10 bootstrap to finish, make check
currently running. I'm currently also running an
x86_64-unknown-linux-gnu bootstrap to make sure nothing breaks there.
Ok for mainline if those pass?
Btw., I noticed a couple of other anomalies:
* configure.ac has
GCC_LIBSTDCXX_RAW_CXX_FLAGS
but does nothing with the result: Makefile.in substitutes the results,
but that's it. Also, toplevel Makefile.tpl should set raw_cxx=true it
this were useful, which it doesn't do as well.
* MAINTAINERS doesn't list a maintainer for libcilkrts.
* I believe there should be a libcilkrts bugzilla category, intead of
having to use other.
Thanks.
Rainer
2013-11-13 Rainer Orth <[email protected]>
* configure.ac (AC_PROG_CXX): Move after AC_PROG_CC.
* configure: Regenerate.
# HG changeset patch
# Parent 8810468d355365c1e486a34054abb823b17aad4b
Enable libcilkrts multilib build on Solaris
diff --git a/libcilkrts/configure.ac b/libcilkrts/configure.ac
--- a/libcilkrts/configure.ac
+++ b/libcilkrts/configure.ac
@@ -46,8 +46,8 @@ AM_MAINTAINER_MODE
# Build a DLL on Windows
# AC_LIBTOOL_WIN32_DLL
+AC_PROG_CC
AC_PROG_CXX
-AC_PROG_CC
# AC_PROG_LIBTOOL
# AC_CONFIG_MACRO_DIR([..])
AC_CONFIG_FILES([Makefile])
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University