Merge branch 'prerelease-3.2.1' into czarek
[unres.git] / INSTALL
diff --git a/INSTALL b/INSTALL
new file mode 100644 (file)
index 0000000..79aca66
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,144 @@
+Guide to installation of the UNRES package and its components
+
+***************************
+1. General information
+***************************
+
+The most convenient way to install the package is using Cmake, as described 
+in section 2. If your system does not run the required version of Cmake or
+installation does not work, do step-by-step compilation of the components
+of the package, as described in section 3.
+
+=== Requirements ===
+
+ -- C compiler
+ -- Fortran compiler (must understant the Fortran 77 instructions)
+ -- MPI (for CSA and MREMD)
+
+***************************
+2. Installation using cmake
+***************************
+
+=== Requirements ===
+
+ -- CMake 2.8.0 or later
+ -- C compiler 
+ -- Fortran compiler
+ -- MPI (for CSA and MREMD)
+
+=== Basic Installation ===
+
+These instructions give a very basic overview of how to configure, compile and
+install UNRESPACK on most systems.  If you are using unique install locations
+and/or libraries that are not automatically detected please consult the 'Advanced'
+section.
+
+1. Create a 'build' directory in the package source directory.
+
+   mkdir build
+   cd build
+
+2. Configure the build system
+
+   cmake ..
+
+3. Compile
+
+   make 
+
+4. Install
+
+   sudo make install
+
+
+=== Advanced ===
+
+The build system (CMake) provides mechanisms for specifying non-standard
+build parameters.
+
+
+Compilers & installation
+------------------------
+   
+   -DCMAKE_Fortran_COMPILER=xxx equal to name of Fortran Compiler you wish to use 
+     (ifort, gfortran)
+
+   -DCMAKE_INSTALL_PREFIX=xxx specify the binaries installation prefix
+                            (default UNRESPACK_source_dir/bin)
+
+Force-fields
+------------
+
+   -DUNRES_MD_FF=xxx  compiles the MD versions with given force field. 
+     Options are: GAB, E0LL2Y. Default: GAB
+
+   -DUNRES_CSA_FF=xxx compiles the CSA versions with given force field
+     Options are: CASP3, ALPHA, BETA, ALPHABETA, CASP5, 3P, 4P. Default: 4P.
+
+Please read the online documentation on force fields available at 
+ http://unres.eu/unres#SECTION00090000000000000000
+  
+
+MPI 
+---
+
+MPI implementation on your system should be automatically detected ("MPI Found" 
+message after runing cmake). If not you have two options:
+
+1. Try setting the path to you MPI wrapper implementation
+
+   -DMPI_Fortran_COMPILER=xxx MPI wrapper
+
+2. If option 1 fails or your MPI implementation does not come with a compiler wrapper 
+   try setting both the MPI include and library paths manually. This will circumvent
+   autodetection entirely. 
+
+   -DMPI_Fortran_INCLUDE_PATH=xxx
+   -DMPI_Fortran_LIBRARY="xxx"
+
+****************************
+3. Step-by-step installation
+****************************
+
+For this installation, you will need to visit each source directory (see doc/UNRESPACK.txt
+for directory structure). Specific installation instructions are in the documentation of 
+of the particular components of the package (UNRES, WHAM, CLUSTER, XDRFPDB). Only general
+instructions are given here.
+
+1. Go to the respective source directory.
+
+2. Determine if any of the Makefiles present there matches your needs. The Makefiles for
+Inter Fortran and Gnu Fortran are present everywhere and are guaranteed to work (provided
+that your compiler/MPI installation is correct). Use this Makefile as the working Makefile
+
+If your system uses a different compiler, copy the most matching Makefile to your working
+Makefile (e.g., to Makefile_CRAY if you'll be working with Cray Fortran).
+
+3. Make a symbolic link of the working Makefile to Makefile, e.g.,
+
+ln -s Makefile_gfortran Makefile
+
+Before that, you'll need to remove the existing symbolic link (in the distribution, it
+points to Makefile_ifort). 
+
+4. Edit the Makefile to define MPI location, libraries, and the binaries directory
+and executalble names, if you want to use different location/names from those in the
+distribution Makefiles. The present locations are the subdirectories of the bin 
+directory and executable names include package component, compiler, MPI information,
+and force field, e.g. unres_csa_gfort_MPICH_4P.exe stands for the CSA component, 
+compiled with GNU Fortran in a parallel mode (using MPICH) to run calculations with
+the 4P force field.
+
+5. For the components of XDRFPDB and in the directory cluster/unres/src, say
+
+make
+
+In other directories say
+
+make <force_field>
+
+to create the respective executable.
+
+The compiler flags are specified for the 4P (also covers the 3P, and CASP5 ff),
+GAB (also covers E0G), and E0LL2Y force fields for all components; the CASP3 force field
+is also specified for the CSA and MINIM component.