Project

General

Profile

Bug #540

problem with mdrun-gpu and version 4.5.1

Added by Christian Muecksch about 9 years ago. Updated about 9 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Erik Lindahl
Category:
mdrun
Target version:
Affected version - extra info:
Affected version:
Difficulty:
uncategorized
Close

Description

I disccovered a problem after compiling mdrun-gpu with the latest Gromacs version 4.5.1.

When running mdrun-gpu I get the following error:

mdrun-gpu: error while loading shared libraries: libgmxpreprocess.so.6: cannot open shared object file: No such file or directory

This problem did not occur with gromacs-4.5-beta4.

So obviously some library files are missing or assigned wrong.


Related issues

Is duplicate of GROMACS - Bug #549: install-mdrun rule does not install shared libs (CMake)Closed09/06/2010

History

#1 Updated by Erik Lindahl about 9 years ago

Please provide full setting for your configuration, compile and install steps.

The default setting is now shared libraries, but that is easy to change if it does not work on your host, although I assume it's just a matter of setting LD_LIBRARY_PATH.

#2 Updated by Christian Muecksch about 9 years ago

I used standard autoconf without any further options on Ubuntu Server 10.04 and then did:

export SOFT=$HOME/GROMACS_test
export NCPU=4
export OPENMM_ROOT_DIR=/usr/local/openmm
cmake -DGMX_OPENMM=ON -DCMAKE_INSTALL_PREFIX=$SOFT
make mdrun -j $NCPU
make install-mdrun

to compile the mdrun-gpu version.

Is it necessary to install Gromacs via CMake in order to use the gpu-version?

When trying to compile with cmake like:

-----------------------------------
mkdir build
cd build
cmake -D FFTW3_INCLUDE_DIR=$SOFT/include -D FFTW3_LIBRARIES=$SOFT/lib/libfftw3f.a -DCMAKE_INSTALL_PREFIX=$SOFT ../
make -j $NCPU


I received the following error:

-----------------------------------
Linking C shared library libmd.so
/usr/bin/ld: /home/c_muecksch/GROMACS_test/lib/libfftw3f.a(mapflags.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with fPIC
/home/c_muecksch/GROMACS_test/lib/libfftw3f.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make2: * [src/mdlib/libmd.so.6] Error 1
make1:
[src/mdlib/CMakeFiles/md.dir/all] Error 2
make: *
* [all] Error 2
----------------------------------

I compiled FFTW in the standard static way using autoconf.

#3 Updated by Teemu Murtola about 9 years ago

For the first case reported (missing libgmxpreprocess), the bug is the same as described in #549, so marking as a duplicate.

For the failing CMake build without OpenMM, the reason is that one cannot link static libraries into a shared library. Specifying the shared library libfftw3f.so instead of libfftw3f.a for FFTW3F_LIBRARIES should solve that problem.

Also available in: Atom PDF