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: Terry Dontje
Subject: Re: Oracle Solaris Studio 12.2 compiler incompatibility with libtool
Date: Tue, 16 Nov 2010 13:47:36 -0500
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.12) Gecko/20101027 Fedora/3.1.6-1.fc13 Lightning/1.0b2 Thunderbird/3.1.6

On 11/15/2010 04:17 PM, Ralf Wildenhues wrote:
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? 
Either one seem to work with Studio 12.2 and both show up in the -flags output.
I checked an earlier Studio circa 2009 and only -Qoption works and only shows up in -flags output.

 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
My 2009 compiler show's
cc: Sun C 5.10 Linux_i386 2009/04/01
CC: Sun C++ 5.10 Linux_i386 2009/04/01
f90: Sun Fortran 95 8.4 Linux_i386 2009/04/01

My Studio 12.2 compiler show's
cc: Sun C 5.11 Linux_i386 2010/08/13
CC: Sun C++ 5.11 Linux_i386 2010/08/13
f90: Sun Fortran 95 8.5 Linux_i386 2010/08/13

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

Thanks,
Ralf


--
Oracle
Terry D. Dontje | Principal Software Engineer
Developer Tools Engineering | +1.781.442.2631
Oracle - Performance Technologies
95 Network Drive, Burlington, MA 01803
Email address@hidden




reply via email to

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