libtool
[Top][All Lists]
Advanced

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

Re: Unwanted shared runtime libraries getting added


From: Ethan Mallove
Subject: Re: Unwanted shared runtime libraries getting added
Date: Mon, 18 Oct 2010 14:40:32 -0400
User-agent: Mutt/1.5.14 (2007-03-31)

On Sat, Oct/16/2010 10:32:13AM, Ralf Wildenhues wrote:
> * Ethan Mallove wrote on Fri, Oct 15, 2010 at 08:59:38PM CEST:
> > On Mon, Oct/11/2010 09:01:56PM, Ralf Wildenhues wrote:
> [...]
> > > 
> > > This doesn't have the libraries you don't want, AFAICS.  So a workaround
> > > (using internal details, but fairly safe) would be to use
> > >   libmpi_cxx_la_LIBTOOLFLAGS = --tag=CC
> > > 
> > > Note however that you get to keep the pieces when this breaks.
> > 
> > I end up getting *both* --tag=CXX and ---tag=CC:
> > 
> > /bin/sh ../../../libtool  --tag=CXX --tag=CC  --mode=link icpc  -O3 
> > -DNDEBUG -Wall -static-intel -m32 -finline-functions -fexceptions -pthread 
> > -version-info 0:0:0 -export-dynamic  -fexceptions  -o libmpi_cxx.la -rpath 
> > /opt/SUNWhpc/HPC9.0/intel/lib libmpi_cxx_la-mpicxx.lo 
> > libmpi_cxx_la-intercepts.lo libmpi_cxx_la-comm.lo libmpi_cxx_la-datatype.lo 
> > libmpi_cxx_la-win.lo libmpi_cxx_la-file.lo ../../../ompi/libmpi.la -lnsl  
> > -lutil 
> 
> OK, sorry, the following should work instead:
> 
> libmpi_cxx_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
>         $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
>         $(CXXFLAGS) $(libmpi_cxx_la_LDFLAGS) $(LDFLAGS) -o $@
> 
> If you don't set libmpi_cxx_la_LDFLAGS yourself, you should replace that
> with AM_LDFLAGS in the above string.

It looks like that gives us the link line we want, yet we still get the
libimf.so dependency:

$ /bin/sh ../../../libtool --tag=CC   --mode=link icpc  -O3 -DNDEBUG -Wall 
-static-intel -m64 -finline-functions -fexceptions -pthread -version-info 0:0:0 
-export-dynamic  -fexceptions  -o libmpi_cxx.la -rpath 
/opt/SUNWhpc/HPC9.0/intel/lib/lib64 mpicxx.lo intercepts.lo comm.lo datatype.lo 
win.lo file.lo ../../../ompi/libmpi.la -lnsl  -lutil 
libtool: link: icc -shared  .libs/mpicxx.o .libs/intercepts.o .libs/comm.o 
.libs/datatype.o .libs/win.o .libs/file.o   -Wl,-rpath -Wl,$ORIGIN -Wl,-rpath 
-Wl,$ORIGIN/.. -Wl,-rpath -Wl,$ORIGIN/../../lib/64 -Wl,-rpath -Wl,$ORIGIN 
-Wl,-rpath -Wl,$ORIGIN/.. -Wl,-rpath -Wl,$ORIGIN/../../lib/64 
../../../ompi/.libs/libmpi.so -ldl -lnsl -lutil  -m64 -pthread   -pthread 
-Wl,-soname -Wl,libmpi_cxx.so.0 -o .libs/libmpi_cxx.so.0.0.0
$ ldd .libs/libmpi_cxx.so.0.0.0
        libmpi.so.0 => not found
        libdl.so.2 => /lib64/libdl.so.2 (0x00002b35a9499000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00002b35a969e000)
        libutil.so.1 => /lib64/libutil.so.1 (0x00002b35a98b6000)
        libimf.so => not found
        libsvml.so => not found
        libm.so.6 => /lib64/libm.so.6 (0x00002b35a9aba000)
        libintlc.so.5 => not found
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b35a9d3e000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b35a9f4c000)
        libc.so.6 => /lib64/libc.so.6 (0x00002b35aa167000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003a20000000)

Thanks,
Ethan

> 
> Cheers,
> Ralf



reply via email to

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