Building Gromacs
GROMACS is a molecular dynamics package primarily designed for
biomolecular systems such as proteins and lipids. GROMACS is a
versatile package to perform molecular dynamics, i.e. simulate the
Newtonian equations of motion for systems with hundreds to millions of
particles.
It is primarily designed for biochemical molecules like
proteins and lipids that have a lot of complicated bonded
interactions, but since GROMACS is extremely fast at calculating the
non-bonded interactions (that usually dominate simulations) many groups
are also using it for research on non-biological systems,
e.g. polymers.
Steps to building
it. FFTW (version 2.1.5) needs to be installed to build GROMACS. You
can also build GROMACS with MPI. These steps, and any known
limitations, are described in the sections below.
Downloading GROMACS
website. You need to have FFTW (version 2.1.5) installed to
build GROMACS. The most recent version of GROMACS is 3.2.1, released 3/1/04.
Building GROMACS
default to directories in your home directory, though you can set them
to wherever you wish to install GROMACS.
Create directories for FFTW and GROMACS and set the paths (the example
is in bash).
export MY_FFTW_PATH=~/fftw export MY_GROMACS_PATH=~/gromacs
These are the directories into which you will
install the FFTW and GROMACS codes.
Configure FFTW version 2.1.5 to work with GROMACS. You will need to
use version 2.1.5 of FFTW, not version 3.0.1. In FFTW 3.0.1 the API
(Application Program Interface) changed so that FFTW no longer works
with GROMACS.
cd ~/fftw/src tar zxvf fftw-2.1.5.tar.gz cd fftw-2.1.5/ export CC=pathcc CFLAGS="-O2 -OPT:Ofast" ./configure --enable-type-prefix --enable-float --prefix=$MY_FFTW_PATH make make install make clean
Configure GROMACS, build it, and install it.
cd ~/gromacs/src tar zxvf gromacs-3.2.1.tar.gz cd gromacs-3.2.1/ CC=pathcc CFLAGS="-O3 -OPT:Ofast" CPPFLAGS=-I$MY_FFTW_PATH/include \ LDFLAGS=-L$MY_FFTW_PATH/lib ./configure --prefix=$MY_GROMACS_PATH make make install make clean
Known limitations
We recommend you record what steps you took, along with their output,
in case of problems. You can include this in your email to support.
Here is an example of changing a make command to record the output in a
text file:
make foo 2>&1 | tee make-foo-log.txt
If you have any comments or suggestions about additions to these
pages, please contact support@pathscale.com.