Hans Martin Senn wrote:
Dear all
I am trying to compile a parallel executable of GROMACS using gcc and
the SCore MPI implementation on a Linux/Opteron cluster. (Essentially,
SCore is a highly efficient MPICH incarnation that circumvents the
TCP/IP stack; see: http://www.pccluster.org/.)
SCore MPI requires linking to some extra libraries that exist only as
static libraries. Hence, compiling GROMACS with --enable-shared fails
with the expected complaints along the lines of "relocation R_X86_64_32
against `a local symbol' can not be used when making a shared object;
recompile with -fPIC".
So I switched to --disable-shared to make a static executable. However,
this fails as well because the GROMACS build procedure still tries to
link explicitly to the shared version of the FFTW libraries (libfftw3.so):
mpicc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused
-funroll-all-loops -o mdrun glaasje.o gctio.o init_sh.o ionize.o
do_gct.o relax_sh.o repl_ex.o xutils.o compute_io.o md.o mdrun.o
genalg.o -L/usr/local/lib ../mdlib/.libs/libmd_d.a -L/usr/X11R6/lib64
../gmxlib/.libs/libgmx_d.a -lnsl /usr/local/lib/libfftw3.so -lm
/usr/X11R6/lib64/libXm.so -lXmu -lXext -lXp -lXt -lSM -lICE -lX11
Of course, the linker falls over, complaining that:
ld: attempted static link of dynamic object `/usr/local/lib/libfftw3.so'
So my question is if and how I can convince the make procedure to use
the static version of the FFTW library, which is available on the system.
Maybe somebody could also comment on why the FFTW lib needs to be linked
against explicitly at all, rather than using -lfftw3 and letting the
linker figure out whether to use the static or the shared version.
Any hints would be greatly appreciated!
Just add the static library on the link command line explicitly:
mpicc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-unused
-funroll-all-loops -o mdrun glaasje.o gctio.o init_sh.o ionize.o
do_gct.o relax_sh.o repl_ex.o xutils.o compute_io.o md.o mdrun.o
genalg.o -L/usr/local/lib ../mdlib/.libs/libmd_d.a -L/usr/X11R6/lib64
../gmxlib/.libs/libgmx_d.a -lnsl /usr/local/lib/libfftw3.a -lm
/usr/X11R6/lib64/libXm.so -lXmu -lXext -lXp -lXt -lSM -lICE -lX11
You also want to configure --without-motif-includes
--
David van der Spoel, Ph.D.
Molec. Biophys. group, Dept. of Cell & Molec. Biol., Uppsala University.
Box 596, 75124 Uppsala, Sweden. Phone: +46184714205. Fax: +4618511755.
[EMAIL PROTECTED] [EMAIL PROTECTED] http://folding.bmc.uu.se
_______________________________________________
gmx-users mailing list [email protected]
http://www.gromacs.org/mailman/listinfo/gmx-users
Please search the archive at http://www.gromacs.org/search before posting!
Please don't post (un)subscribe requests to the list. Use the
www interface or send it to [EMAIL PROTECTED]
Can't post? Read http://www.gromacs.org/mailing_lists/users.php