bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Oracle Solaris Studio 12.2 compiler incompatibility with libtool


From: Ralf Wildenhues
Subject: Re: Oracle Solaris Studio 12.2 compiler incompatibility with libtool
Date: Mon, 15 Nov 2010 22:17:26 +0100
User-agent: Mutt/1.5.20 (2010-08-04)

Hi Terry,

* Terry Dontje wrote on Mon, Nov 15, 2010 at 01:00:17PM CET:
> I am actually seeing an incompatibility between libtool and Solaris Studio
> 12.2 "Fortran" compiler (not C).  It looks like lt_prog_compiler_wl is being
> set to -rpath and not '-Wl,-rpath or '-Qoption ld -path'.  Below is the
> libtool link line and I've attached the output of libtool --config to this
> email.

Thanks for the bug erport.

> 
> /bin/sh ../../../libtool  --tag=FC   --mode=link f95 -I../../../ompi/include
> -I../../../../ompi/include -M. -I../../../../ompi/mpi/f90
> -I../../../ompi/mpi/f90  -m64 -version-info 0:0:0  -export-dynamic  -o
> libmpi_f90.la -rpath /workspace/tdd/ctnext/tr-linux/lib mpi.lo mpi_sizeof.lo
> mpi_comm_spawn_multiple_f90.lo mpi_testall_f90.lo mpi_testsome_f90.lo
> mpi_waitall_f90.lo mpi_waitsome_f90.lo mpi_wtick_f90.lo mpi_wtime_f90.lo
> ../../../ompi/mpi/f77/libmpi_f77.la -lrt -lnsl  -lutil -lm
> libtool: link: f95 -G  .libs/mpi.o .libs/mpi_sizeof.o
> .libs/mpi_comm_spawn_multiple_f90.o .libs/mpi_testall_f90.o
> .libs/mpi_testsome_f90.o .libs/mpi_waitall_f90.o .libs/mpi_waitsome_f90.o
> .libs/mpi_wtick_f90.o .libs/mpi_wtime_f90.o   -rpath
> /workspace/tdd/ctnext/ws-trunk/linux/ompi/mpi/f77/.libs -rpath
> /workspace/tdd/ctnext/ws-trunk/linux/ompi/.libs -rpath
> /workspace/tdd/ctnext/tr-linux/lib
> -L/workspace/tdd/ctnext/ws-trunk/linux/ompi/.libs
> ../../../ompi/mpi/f77/.libs/libmpi_f77.so
> /workspace/tdd/ctnext/ws-trunk/linux/ompi/.libs/libmpi.so -lcrypto -lssl
> -ldl -lrt -lnsl -lutil -lm  -m64   -mt -soname libmpi_f90.so.0 -o
> .libs/libmpi_f90.so.0.0.0
> f90: Warning: Option -path passed to ld, if ld is invoked, ignored otherwise
> f90: Warning: Option -path passed to ld, if ld is invoked, ignored otherwise
> f90: Warning: Option -path passed to ld, if ld is invoked, ignored otherwise
> f90: Warning: Option -soname passed to ld, if ld is invoked, ignored
> otherwise
> /usr/bin/ld: unrecognized option '-path'

Ahh, so Solaris Studio changed their Fortran compiler characteristics.
libtool.m4 has:

        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ F* | *Sun*Fortran*)
          # Sun Fortran 8.3 passes all unrecognized flags to the linker
          _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
          _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
          _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
          ;;
        *Sun\ C*)
          # Sun C 5.9
          _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
          _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
          _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
          ;;

which looks like old Fortran compilers didn't accept a -Wl, or '-Qoption
ld' argument to pass flags on to the linker.  Or maybe it still doesn't,
but -r is detected as a compiler argument now.  See also
http://lists.gnu.org/archive/html/libtool-patches/2006-05/msg00011.html

Can you confirm whether -Wl, or '-Qoption ld' is accepted by Solaris
Studio 12.2 f90 for GNU/Linux now?  The online docs don't seem to
present me with different man pages for the Solaris and the GNU/Linux
versions, but I am fairly certain that the old versions did not accept
the flags.

Please also post
  cc -V
  CC -V
  f90 -V

for this version of the compiler, so we can try to differentiate from
the older versions.

Thanks,
Ralf



reply via email to

[Prev in Thread] Current Thread [Next in Thread]