So I got it to work by stripping stuff out of libtool:
AC_CONFIG_COMMANDS(rminterlibdeps,
[
echo Removing the inter-library dependencies;
os_fc=`uname`-${FC};
case $os_fc in
Linux-ftn)
cp libtool libtool.1;
sed -e "s/postdeps=.*$/postdeps=/g" -e
"s/postdep_objects=.*$/postdep_objects=/g" -e
"s/link_all_deplibs=.*$/link_all_deplibs=no/g" <libtool.1 >libtool.2;
sed -e "s?-L/opt/fftw/3.2.1/lib??g" -e
"s?/opt/fftw/3.2.1/lib??g" <libtool.2 >libtool;
;;
esac
rm -f libtool.1 libtool.2;
]
)
Happy holidays to all!
John Cary
John R. Cary wrote:
I see lots of traffic on this subject, but I
do not know how to solve my particular situation.
On the Cray XT4 we use compiler wrappers to handle
to cross-compile situation, where one cannot have
static libs on the back-end nodes. My understanding
is that the wrapper
takes care of the need for mostly static on the back
end nodes, with the systems libraries explicitly
not having an rpath so that upon submission the
system can change to libraries appropriate for
the back end nodes.
The final link using libtool-2.2.6b fails for an executable:
/bin/sh ../../libtool --tag=F77 --tag=FC --mode=link ftn
-ffixed-line-length-132 -fpic -O2 -DMPICH_IGNORE_CXX_SEEK -fPIC -o
time_loop time_loop.o stripx.o ../../glf23/src/glf_include_mod.lo
../../glf23/src/libGLF23.la
libtool: link: warning: library `/opt/fftw/3.2.1/lib/libfftw3.la' was
moved.
libtool: link: warning: library `/opt/fftw/3.2.1/lib/libfftw3f.la' was
moved.
libtool: link: warning: library `/opt/fftw/3.2.1/lib/libfftw3.la' was
moved.
libtool: link: warning: library `/opt/fftw/3.2.1/lib/libfftw3f.la' was
moved.
libtool: link: ftn -ffixed-line-length-132 -fpic -O2
-DMPICH_IGNORE_CXX_SEEK -fPIC -o time_loop time_loop.o stripx.o
../../glf23/src/glf_include_mod.o ../../glf23/src/.libs/libGLF23.a
/opt/fftw/3.2.1/lib/libfftw3.so /opt/fftw/3.2.1/lib/libfftw3f.so
/opt/gcc/4.4.1/snos/lib/gcc/x86_64-suse-linux/4.4.1/libgfortranbegin.a
/opt/gcc/4.4.1/snos/lib/../lib64/libgfortran.so -lm -pthread
-Wl,-rpath -Wl,/opt/fftw/3.2.1/lib -Wl,-rpath
-Wl,/opt/gcc/4.4.1/snos/lib/../lib64 -Wl,-rpath
-Wl,/opt/fftw/3.2.1/lib -Wl,-rpath -Wl,/opt/gcc/4.4.1/snos/lib/../lib64
/opt/cray/xt-asyncpe/3.3/bin/ftn: INFO: linux target is being used
/usr/bin/ld: attempted static link of dynamic object
`/opt/fftw/3.2.1/lib/libfftw3.so'
collect2: ld returned 1 exit status
make: *** [time_loop] Error 1
One can see that libtool has decide to add files to the
link line. If I take them out, the executable links fine:
nid00011.franklin$ ftn -ffixed-line-length-132 -fpic -O2
-DMPICH_IGNORE_CXX_SEEK -fPIC -o time_loop time_loop.o stripx.o
../../glf23/src/glf_include_mod.o ../../glf23/src/.libs/libGLF23.a
/opt/cray/xt-asyncpe/3.3/bin/ftn: INFO: linux target is being used
and can even be used to run the executable on the back end
nodes.
So I would like to disable the insertion of extra libraries
by libtool. Is there a way to do this?
Thanks....John Cary
PS - how does libtool decide to add these libraries?
--
Tech-X Corp., 5621 Arapahoe Ave, Suite A, Boulder CO 80303
c...@txcorp.com, p 303-448-0727, f 303-448-7756, NEW CELL 303-881-8572
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool