[gmx-users] Cant remove libpthreads from the link
Matt McMullen
mmcmullen at scyld.com
Fri Mar 4 18:40:59 CET 2005
GMX-User List,
I am attempting to install Gromacs-3.2.1 on a Scyld 29-CZ4 Linux distribution.
The Scyld OS has a problem doing a remote execute on an program that has the
pthreads library linked in (regardless of the program actually using the
pthreads calls). Consequently, I am trying to remove the pthreads library
completely from the link.
I start the gromacs build with the following command....
>>./configure --disable-threads --enable-mpi
However, when I do search for the pthreads library in the src Makefiles I get
the following output
>>grep -R -e"lpthread" src/*
src/contrib/Makefile:LIBS = -L/usr/X11R6/lib64 -lnsl -lsrfftw_mpi -lsfftw_mpi
-lsrfftw -lsfftw -lm -lXm -lXt -lSM -lICE -lXext -lXp -lX11 -lxml2 -lz
-lpthread -lm
src/gmxlib/Makefile:LIBS = -L/usr/X11R6/lib64 -lnsl -lsrfftw_mpi -lsfftw_mpi
-lsrfftw -lsfftw -lm -lXm -lXt -lSM -lICE -lXext -lXp -lX11 -lxml2 -lz
-lpthread -lm
.... (more of the same)......
And when I do a symbolic link analysis on the src/kernel/mdrun executable I
get the following.....
>>make
>>cd src/kernel
>>ldd mdrun
libnsl.so.1 => /lib64/libnsl.so.1 (0x0000002a9566b000)
libsrfftw_mpi.so.2 => /usr/local/lib/libsrfftw_mpi.so.2
(0x0000002a95781000)
libsfftw_mpi.so.2 => /usr/local/lib/libsfftw_mpi.so.2
(0x0000002a95883000)
libsrfftw.so.2 => /usr/local/lib/libsrfftw.so.2 (0x0000002a9598a000)
libsfftw.so.2 => /usr/local/lib/libsfftw.so.2 (0x0000002a95ab9000)
libXm.so.3 => /usr/X11R6/lib64/libXm.so.3 (0x0000002a95bf2000)
libXt.so.6 => /usr/X11R6/lib64/libXt.so.6 (0x0000002a95f8f000)
libSM.so.6 => /usr/X11R6/lib64/libSM.so.6 (0x0000002a960ef000)
libICE.so.6 => /usr/X11R6/lib64/libICE.so.6 (0x0000002a961f9000)
libXext.so.6 => /usr/X11R6/lib64/libXext.so.6 (0x0000002a96312000)
libXp.so.6 => /usr/X11R6/lib64/libXp.so.6 (0x0000002a96423000)
libX11.so.6 => /usr/X11R6/lib64/libX11.so.6 (0x0000002a9652b000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x0000002a96706000)
libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a96925000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000002a96a33000)
libm.so.6 => /lib64/libm.so.6 (0x0000002a96bc7000)
libmpich-gnu.so.1 => /usr/lib64/MPICH/p4/gnu/libmpich-gnu.so.1
(0x0000002a96d4f000)
libbproc.so.2 => /usr/lib64/libbproc.so.2 (0x0000002a96f10000)
libc.so.6 => /lib64/libc.so.6 (0x0000002a97014000)
libXmu.so.6 => /usr/X11R6/lib64/libXmu.so.6 (0x0000002a97259000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000002a97372000)
/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
(0x0000002a95556000)
libbeomap.so.0.1 => /usr/lib64/libbeomap.so.0.1 (0x0000002a97475000)
libbpsh.so.0 => /usr/lib64/libbpsh.so.0 (0x0000002a97578000)
libbeostat.so.0 => /usr/lib64/libbeostat.so.0 (0x0000002a9767b000)
If I attempt to manually remove the -lpthread switch from all the make files
and recompile/link I get....
>>some command to remove all -lpthread from Makefiles
>>make clean
>>make
>>cd src/kernel
>>ldd mdrun
libnsl.so.1 => /lib64/libnsl.so.1 (0x0000002a9566b000)
libsrfftw_mpi.so.2 => /usr/local/lib/libsrfftw_mpi.so.2
(0x0000002a95781000)
libsfftw_mpi.so.2 => /usr/local/lib/libsfftw_mpi.so.2
(0x0000002a95883000)
libsrfftw.so.2 => /usr/local/lib/libsrfftw.so.2 (0x0000002a9598a000)
libsfftw.so.2 => /usr/local/lib/libsfftw.so.2 (0x0000002a95ab9000)
libXm.so.3 => /usr/X11R6/lib64/libXm.so.3 (0x0000002a95bf2000)
libXt.so.6 => /usr/X11R6/lib64/libXt.so.6 (0x0000002a95f8f000)
libSM.so.6 => /usr/X11R6/lib64/libSM.so.6 (0x0000002a960ef000)
libICE.so.6 => /usr/X11R6/lib64/libICE.so.6 (0x0000002a961f9000)
libXext.so.6 => /usr/X11R6/lib64/libXext.so.6 (0x0000002a96312000)
libXp.so.6 => /usr/X11R6/lib64/libXp.so.6 (0x0000002a96423000)
libX11.so.6 => /usr/X11R6/lib64/libX11.so.6 (0x0000002a9652b000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x0000002a96706000)
libz.so.1 => /usr/lib64/libz.so.1 (0x0000002a96925000)
libm.so.6 => /lib64/libm.so.6 (0x0000002a96a33000)
libmpich-gnu.so.1 => /usr/lib64/MPICH/p4/gnu/libmpich-gnu.so.1
(0x0000002a96bbb000)
libbproc.so.2 => /usr/lib64/libbproc.so.2 (0x0000002a96d7c000)
libc.so.6 => /lib64/libc.so.6 (0x0000002a96e80000)
libXmu.so.6 => /usr/X11R6/lib64/libXmu.so.6 (0x0000002a970c5000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000002a971de000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000002a972e1000)
libbeomap.so.0.1 => /usr/lib64/libbeomap.so.0.1 (0x0000002a97475000)
libbpsh.so.0 => /usr/lib64/libbpsh.so.0 (0x0000002a97578000)
libbeostat.so.0 => /usr/lib64/libbeostat.so.0 (0x0000002a9767b000)
/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
(0x0000002a95556000)
Unfortunately, pthreads is still being linked in.
Do you know of a way to completely remove this from the link?
Thanks,
Matt McMullen
More information about the gromacs.org_gmx-users
mailing list