[gmx-users] gromacs 4.6.7 plumed -Segmentation fault

Ana Marija sokovic.anamarija at gmail.com
Fri Oct 23 18:12:08 CEST 2015


the above was reported here as a bug, but I am not sure where and how
should I put this flag: CFLAGS=CXXFLAGS=-static

http://redmine.gromacs.org/issues/1641

does is just go under cmake like: -DCFLAGS=CXXFLAGS=-static or?

On Fri, Oct 23, 2015 at 10:51 AM, Ana Marija <sokovic.anamarija at gmail.com>
wrote:

> HI Everybody,
>
> I got cmake/3.3.2 installed so I decided to install gromacs 5.0.4 with
> plumed 2.2.0
>
> but I got this error during "make" step of gromacs:
>
> 100%] Linking CXX executable ../../bin/gmx_mpi
> /usr/lib/../lib64/librt.a(clock_gettime.o): In function
> `hp_timing_gettime':
> /usr/src/packages/BUILD/glibc-2.11.3/rt/../sysdeps/unix/clock_gettime.c:65:
> undefined reference to `_dl_cpuclock_offset'
> collect2: error: ld returned 1 exit status
> make[2]: *** [bin/gmx_mpi] Error 1
> make[1]: *** [src/programs/CMakeFiles/gmx.dir/all] Error 2
>
> my recipe is bellow and I am doing this on Cray XE6 machine, please let me
> know what I can be doing wrong:
>
> module swap PrgEnv-cray PrgEnv-gnu
> module load fftw/3.3.4.0
> module load cray-mpich/7.0.5
> module load gsl/1.15
> module load cmake
> #in /lustre/beagle2/ams/new/gromacs make directory lib2
>
> mkdir lib2
>
> ams at login1:/lustre/beagle2/ams/lib2>ln -s
> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a libblas.a
> ams at login1:/lustre/beagle2/ams/lib2>ln -s
> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a liblapack.a
>
> #download it from here: http://www.plumed-code.org/get-it
> tar zxvf plumed-2.2.0.tgz
> cd plumed-2.2.0
>
> ./configure CC=cc CXX=CC F77=ftn
> LDFLAGS="-L/lustre/beagle2/ams/new/gromacs/lib2"
> --prefix=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0 --enable-mpi
> --disable-basic-warnings --disable-openmp
>
> <strong>###Makefile.conf should look like this, if not please delete all
> extra stuff before proceeding to make step</strong>
> CC=cc
> FC=gfortran
> LDF90=gfortran
> CFLAGS=-g -O2 -fPIC
> CXX=CC
> CXXFLAGS=-O -fPIC
> CXXFLAGS_NOOPENMP=-O -fPIC
> CPPFLAGS= -DPACKAGE_NAME=\"PLUMED\" -DPACKAGE_TARNAME=\"plumed\"
> -DPACKAGE_VERSION=\"2\" -DPACKAGE_STRING=\"PLUMED\ 2\"
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1
> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__PLUMED_HAS_EXTERNAL_BLAS=1
> -D__PLUMED_HAS_EXTERNAL_LAPACK=1 -D__PLUMED_HAS_MOLFILE_PLUGINS=1
> -D__PLUMED_HAS_MPI=1 -D__PLUMED_HAS_CLOCK_GETTIME=1
> -D__PLUMED_HAS_GETTIMEOFDAY=1 -D__PLUMED_HAS_READDIR_R=1
> -D__PLUMED_HAS_CREGEX=1 -D__PLUMED_HAS_DLOPEN=1 -D__PLUMED_HAS_EXECINFO=1
> -D__PLUMED_HAS_ZLIB=1 -DNDEBUG=1 -D_REENTRANT=1
> LDFLAGS=
> DYNAMIC_LIBS=-lstdc++ -lz -ldl  -L/lustre/beagle2/ams/new/gromacs/lib2
> LIBS=-ldl
> SOEXT=
> LD=CC
> LDSO=CC -shared
> GCCDEP=CC
> prefix=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0
> program_transform_name=s,x,x,
> program_can_run_mpi=yes
> program_can_run=yes
> LD_RO=ld -r -o
> exec_prefix=${prefix}
> bindir=${exec_prefix}/bin
> libdir=${exec_prefix}/lib
> includedir=${prefix}/include
> datarootdir=${prefix}/share
> datadir=${datarootdir}
> docdir=${datarootdir}/doc/plumed
> htmldir=${docdir}
> program_name=plumed
> ###
>
> make
> make install
>
> export PATH=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0/bin:$PATH
>
> #1. Make a directory for modulefiles (e.g.
> /lustre/beagle2/ams/new/modulefiles/)
> #2. Copy file: cp
> /lustre/beagle2/ams/new/gromacs/plumed-2.2.0/lib/plumed/modulefile
> /lustre/beagle2/ams/new/modulefiles/plumed/2.2.0/
> #3. type "module use /lustre/beagle2/ams/new/modulefiles/"
> #4. type "module load plumed/2.2.0"
>
> export PATH=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0/bin:$PATH
> module use /lustre/beagle2/ams/new/modulefiles/
> module load plumed/2.2.0
>
> ### instal gromacs-5.0.4
> wget ftp://ftp.gromacs.org/pub/gromacs/gromacs-5.0.4.tar.gz
> tar zxvf gromacs-5.0.4.tar.gz
> cd gromacs-5.0.4/
> ams at login1:/lustre/beagle2/ams/new/gromacs/gromacs-5.0.4>plumed-patch -p
> --static
>
>
> PLUMED patching tool
>
> 1) amber14        4) gromacs-5.0.4    7) namd-2.8
> 2) gromacs-4.5.7    5) gromacs-5.1.0    8) namd-2.9
> 3) gromacs-4.6.7    6) lammps-6Apr13    9) qespresso-5.0.2
>
> Choose the best matching code/version:4
>
> mkdir build
> cd build
>
>
> export BUILD_WITH_INSTALL_RPATH=TRUE
> export INSTALL_RPATH=""
> export SKIP_BUILD_RPATH=TRUE
> export
> CMAKE_LIBRARY_PATH="/lustre/beagle2/ams/new/gromacs/lib:$CMAKE_LIBRARY_PATH"
>
> #in /lustre/beagle2/ams/new/gromacs make directory lib
>
> ams at login1:/lustre/beagle2/ams/new/gromacs/lib>ln -s
> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a libblas.a
> ams at login1:/lustre/beagle2/ams/new/gromacs/lib>ln -s
> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a liblapack.a
>
> cd /lustre/beagle2/ams/new/gromacs/gromacs-5.0.4/build
>
> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
> -DMPI_LIBRARY="/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libmpich.a;/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libfmpich_gnu_49.a;/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libmpl.a;/opt/cray/pmi/default/lib64/libpmi.a;/opt/cray/rca/default/lib64/librca.a;/opt/gcc/4.9.2/snos/lib64/libgfortran.a;/opt/gcc/4.9.2/snos/lib64/libstdc++.a;/opt/cray/alps/default/lib64/libalpslli.a;/opt/cray/alps/default/lib64/libalpsutil.a;/opt/gcc/4.9.2/snos/lib64/libgomp.a;/opt/gcc/4.9.2/snos/lib64/libquadmath.a;/opt/cray/ugni/default/lib64/libugni.a;/opt/cray/udreg/default/lib64/libudreg.a;/opt/cray/xpmem/default/lib64/libxpmem.a;/opt/cray/wlm_detect/default/lib64/libwlm_detect.a;/lib64/libdl.so.2"
> -DMPI_INCLUDE_PATH="/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/include"
> -DCMAKE_CXX_COMPILER=CC -DCMAKE_C_COMPILER=cc -DGMX_FORCE_CXX=ON
> -DGMX_DOUBLE=OFF -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=ON
> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/new/gromacs/gromacs-5.0.4/build
> -DGMX_X11=OFF -DGMX_BLAS_USER=/lustre/beagle2/ams/new/gromacs/lib/libblas.a
> -DGMX_LAPACK_USER=/lustre/beagle2/ams/new/gromacs/lib/liblapack.a
> -DCMAKE_SKIP_RPATH=ON
>
>
> make
> make install
>
>
>
> On Thu, Oct 22, 2015 at 12:27 PM, Ana Marija <sokovic.anamarija at gmail.com>
> wrote:
>
>> Thanks everybody for all your help!
>>
>> On Thu, Oct 22, 2015 at 12:20 PM, Mark Abraham <mark.j.abraham at gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> On Thu, Oct 22, 2015 at 6:58 PM Ana Marija <sokovic.anamarija at gmail.com>
>>> wrote:
>>>
>>>> I just tried to install it with:
>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>> -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>> -DGMX_X11=OFF
>>>>
>>>> but the error is the same as above.
>>>>
>>>
>>> It can't be if you've done it properly. Use a new, empty build directory.
>>>
>>>
>>>> My goal with this installation (without cross compiler) was to use it
>>>> to generate input files and than use another installation of gromacs
>>>> compiled with cross compilers to complete the run. Where I would use the
>>>> same version of gromacs  in both cases, 4.6.7. Can you please confirm me
>>>> that this is acceptable approach?
>>>>
>>>
>>> Yes, but needlessly complex. You can run grompp anywhere, copy the file
>>> to the Cray, and use the resulting .tpr on the compute nodes, like I said a
>>> while ago.
>>>
>>>
>>>> The reason why I can't use newer version of gromacs is that I only have
>>>> cmake 2.8.4 on this machine and it is impossible to install newer version
>>>> of cmake because it is tied to gnu version we got from Cray etc.
>>>>
>>>
>>> Perhaps Cray supplied a cmake, but it doesn't run on the compute nodes,
>>> and has nothing at all to do with the back end compilers, and your system
>>> admins can and should be willing to download and install a more recent
>>> cmake for you and everybody else :-)
>>>
>>> Mark
>>>
>>>
>>>> On Thu, Oct 22, 2015 at 11:51 AM, Szilárd Páll <sin.pecado at gmail.com>
>>>> wrote:
>>>>
>>>>> On Thu, Oct 22, 2015 at 6:34 PM, Ana Marija <
>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>
>>>>>> I installed it via:
>>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>>>> -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>>>> -DGMX_X11=OFF -DCMAKE_SKIP_RPATH=ON
>>>>>>
>>>>>> then I was running it on login nodes via:
>>>>>>
>>>>>> /lustre/beagle2/ams/gro/gromacs-4.6.7/build/bin/grompp -f
>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/grompp.mdp -c
>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/initial.gro -p
>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/topol.top -n
>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/index.ndx -o ttmeta1.tpr
>>>>>>
>>>>>>
>>>>>> but I didn't get .tpr file, and output was this:
>>>>>> Back Off! I just backed up mdout.mdp to ./#mdout.mdp.2#
>>>>>> Generated 1081 of the 1081 non-bonded parameter combinations
>>>>>> Generating 1-4 interactions: fudge = 0.5
>>>>>> Generated 994 of the 1081 1-4 parameter combinations
>>>>>>
>>>>>> -------------------------------------------------------
>>>>>> Program grompp, VERSION 4.6.7
>>>>>> Source code file:
>>>>>> /lustre/beagle2/ams/gro/gromacs-4.6.7/src/kernel/toppush.c, line: 1803
>>>>>>
>>>>>> Fatal error:
>>>>>> [ file tip3p.itp, line 39 ]:
>>>>>> Atom index (1) in settles out of bounds (1-0).
>>>>>> This probably means that you have inserted topology section "settles"
>>>>>> in a part belonging to a different molecule than you intended to.
>>>>>> In that case move the "settles" section to the right molecule.
>>>>>>
>>>>>> can you please advise what should I do in this situation?
>>>>>>
>>>>>
>>>>> As Justin said, this isn't an issue with the GROMACS build anymore
>>>>> (but rather with the inputs). So it seems that the original problem is
>>>>> solved - unless you really need to run grompp on the compute nodes.
>>>>>
>>>>> BTW, I hope you know that 4.6.7 is a rather old and outdated version;
>>>>> the 5.0 and 5.1 series has been released since and the former is AFAIK
>>>>> supported by PLUMED!
>>>>>
>>>>> Cheers,
>>>>> --
>>>>> Szilárd
>>>>>
>>>>>
>>>>>
>>>>>>
>>>>>> On Thu, Oct 22, 2015 at 11:06 AM, Ana Marija <
>>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>>
>>>>>>> so is it ok to try this?
>>>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>>>>> -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>>>>> -DGMX_X11=OFF -DCMAKE_SKIP_RPATH=ON
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Oct 22, 2015 at 11:03 AM, Mark Abraham <
>>>>>>> mark.j.abraham at gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> Your blas and lapack were compiled with gfortran, but in a way that
>>>>>>>> they require that one links further dependencies to use them later on. So
>>>>>>>> compile them better, or use dynamic linking.
>>>>>>>>
>>>>>>>> But 99.9% of GROMACS users do not need to get involved with this,
>>>>>>>> so just leave GMX_BLAS_USER and GMX_BLAS_LAPACK unset and GROMACS will use
>>>>>>>> its internal versions.
>>>>>>>>
>>>>>>>> Mark
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>
>


More information about the gromacs.org_gmx-users mailing list