Please check the following sites for additional information:
General information: http://oss.deltares.nl/web/opendelft3d/source-code
FAQ                : http://oss.deltares.nl/web/opendelft3d/faq-compiling-code
Compile forum      : http://oss.deltares.nl/web/opendelft3d/general/-/message_boards?_19_mbCategoryId=22276


Compiling on Windows
====================
  0) Be sure that you have installed:
     Visual Studio 2008, including Fortran compiler Intel 11.0 (11.1)
     OR
     Visual Studio 2010, including Fortran compiler Intel 12.0 (Intel(R) Visual Fortran Composer XE 2011)
     OR
     Visual Studio 2012, including Fortran compiler Intel 13.0 (Intel(R) Visual Fortran Composer XE 2013)
  1) Open "src\d_hydro_open_source.sln" in Visual Studio 2008
     OR
     Open "src\d_hydro_open_source_vs2010.sln" in Visual Studio 2010/Visual Studio 2012
  2) Select the "solution configuration" you want: "Debug" or "Release" (normally "Release")
  3) Select the "solution platform" you want: "Win32" or "x64" (default "Win32")
  4) <Ctrl><Shift>B will compile the full solution
  5) The binaries are installed in directory "bin\win32" (Release, Win32), "bin\win64" (Release, x64)
     or in the subdirectory of the executable, e.g. "src\engines_gpl\d_hydro\bin\Debug" (Debug)


Compiling on Linux
==================
  1) In directory "src", do one of the following two options:
     Option A):
         ./autogen.sh
	 CFLAGS='-O2' CXXFLAGS='-O2' FFLAGS='-O2' FCFLAGS='-O2' ./configure --prefix=`pwd`
         make ds-install
     Option B):
         Use script build.sh. Executing "./build.sh" will show the usage. The following example line is used to create the latest fully tested version:
         ./build.sh -intel11.1 -64bit
         WARNING: build.sh is system dependent. You have to modify it to fit to your site!
  2) The binaries are installed in directory:
     - "src/bin" and "src/lib" (due to "--prefix=`pwd`" and default "install")
     - "bin/lnx", ready to copy to an existing Delft3D installation (due to "ds-install"),
                  ready to be used by the examples
  3) To clean (removing all files generated by autoreconf/configure/make):
     ./clean.sh
  4) Remarks:
     - Compiling on 32bit Linux platforms does not work. This is a known bug.
     - Be careful with tools/compilers located in different directories due to different revision/build numbers (e.q. /opt/mpich2-1.4.1-gcc-4.6.2)
       You have to take care of that yourself
     - Check both "common.am" and "build.sh"
     - Check http://oss.deltares.nl/web/opendelft3d/faq-compiling-code
     - When using a --prefix unequal to `pwd`, the specified directory will contain:
       - "bin" and "lib" subdirectories (due to the default Linux "install")
       - "lnx", ready to copy to an existing Delft3D installation (due to "ds-install"),
       The examples will not run "out of the box". The runscripts must be adapted to point to the --prefix location
       


Compiling on OSX
================
The OSX version is only tested with Macports gcc45 + openmpi compilers. Make sure you also get libtool, autoconf, automake, gnu make from macports. The OSX version is very alpha (not tested) so please don't use it for anything serious and report any problems to the general forum. The steps to get it working are first install DelftOnline:
   1) cd delft3dsrcdirectory
   2) autoreconf -i 
   3) ./configure (*,**)
   4) make
   5) make install 
* If you don't want to install into /usr/local, use --prefix=abspath
** Set DYLD_LIBRARY_PATH to the directory containing DelftOnline if it's not in your default path


Debugging in Microsoft Visual Studio
====================================
- Be sure to have compiled the "Debug configuration" (Build -> Configuration Manager...).
  All resulting binaries are copied automatically to directory "...\src\engines_gpl\d_hydro\bin\Debug".
- In your model input directory: put a copy of file "...\oss\src\engines_gpl\d_hydro\scripts\config_d_hydro.xml",
  open it in a text editor and fill in the correct name of the mdf-file.
- In VisualStudio:
  1) right-click on the project "d_hydro", Properties -> Configuration properties -> Debugging:
     Command Arguments: config_d_hydro.xml
     Working directory: d:/full/path/to/your/model/input/directory
     OK
  2) In the source code: add a breakpoint. Click some line, then click in the gray bar in front of this line (or press F9). A red dot will appear.
  3) right-click on the project "d_hydro", Debug -> Start new instance.
     A window will allways appear saying source code has been changed. You can rebuild the source code or skip this if you are sure all source code is build correctly.
     Then the calculation starts.

Directory structure
===================
engines     : Main programs
engines_gpl : Open source engines, under GPL conditions, see ../gpl-3.0.txt
tools_gpl   : Open source small programs which support the engines, under GPL conditions, see ../gpl-3.0.txt
tools_lgpl  : Open source tools, under LGPL conditions, see ../lgpl-2.1.txt
utils_gpl   : Open source libraries which are used by the engines and/or tools, under GPL conditions, see ../gpl-3.0.txt
utils_lgpl  : Open source utils, under LGPL conditions, see ../lgpl-2.1.txt


Location where compiler flags are defined/added (Linux only)
============================================================
configure.ac
common.am
build.sh


28 Nov 2013
adri.mourits@deltares.nl