source: pcp/README@ 47548d

Last change on this file since 47548d was 5a0f8e, checked in by Frederik Heber <heber@…>, 17 years ago

LIBS instead of MPILIBS is the place where something like "-lmpich" has to be specified.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1# Project: ParallelCarParrinello
2# Jan Hamaekers
3# Frederik Heber
4# 2005
5#
6# File: README
7
8 ParallelCarParrinello
9
10Is a mathematical-physical programme to calucate via density functional theory
11the molecular (Car&Parrinello) dynamics of a many electron system, especially
12the linear response of the system to a external magnetic field in a perturbation
13approach in terms of susceptibility and chemical shielding. It was developed mainly
14by Jan Hamaekers with additional code by Frederik Heber at the Institute for
15Numerical Simulation at the University of Bonn[3].
16
17
18
19INSTALLATION NOTES
20==================
21
22In general, note that the following command line variables will influence configure:
23CC, CXX, CFLAGS, LDFLAGS, LD_LIBRARY_PATH, MPICC, MPILIBS, LIBS
24Try specifying these tailored to your needs if checks of configure fail.
25
26MPI
27---
28
29In order to compile a parallel version an mpi package such as mpich is needed. If present there are two possibilities:
301. Configure finds 'mpicc' which is basically just a link to gcc with includes, library paths and needed libs. Everything easy and fine.
312. It does not, then you have to specify the paths by yourself by prepending the configure command with something such as the following
32 MPICC="gcc -I/path/to/mpi/installation/include" LDFLAGS="-L/path/to/mpi/installation/lib -Wl,-rpath=/path/to/mpi/installation/lib" LIBS="-lmpich" ./configure andsoon
33Note that MPILIBS is the LDFLAGS for MPICC, whereas LIBS are additional libs appended at the very end (and the order of the libs is important, those at the end are those incorporated first and libmpich must be one of the first).
34
35WINDOWS
36-------
37On a windows system the following packages will be needed under a cygwin environment: cygwin, mpi, perl, gcc
38
39You need libfftw-2 from the fftw website[1] and also mpi[2], also you might need to compile both. MPI has to be in the path and know about its includes and libs (which it will most of the time)
40
41
42LINUX
43-----
44If libfftw and alikes reside in a path which is not set via LD_... then use LDFLAGS ("-L/foo/bar/lib") and CFLAGS ("-I/foo/var/include") which are passed on to compiler and linker by (auto)make. After changing them you need to re-run configure. Also, if you receive error messages when launching such as "unable to finde shared object", try "ldd pcp" on the compiled executable. If a shared library cannot be found, you might want to add the path, where it resides, to the variable LD_LIBRARY_PATH.
45
46If the executables spills out errors such as "error while loading shared libraries: libdrfftw.so.2:" because you cannot set the LD_LIBRARY_PATH on a distant node, then add the search path in the executable by adding to LDFLAGS
47LDFLAGS="... -Wl,-rpath,/path/to/fftw/lib"
48
49LINKS
50=====
51[1] http://www.fftw.org/ - FFTW website
52[2] http://www-unix.mcs.anl.gov/mpi/mpich/ - MPICH website
53[3] http://www.ins.uni-bonn.de/
Note: See TracBrowser for help on using the repository browser.