1Installation Instructions 2========================= 3 4For a full explanation of the DUNE installation process please read 5the installation notes [0]. The following introduction is meant for 6the impatient. 7 8Getting started 9--------------- 10 11Suppose you have downloaded all DUNE modules of interest to your 12computer and extracted then in one common directory. See [1] for a 13list of available modules. 14 15To compile the modules Dune has to check several components of 16your system and whether prerequisites within the modules are met. For 17the ease of users we have designed a custom build system on top of CMake. 18Run 19 20 ./dune-common/bin/dunecontrol all 21 22to commence those tests and build all modules you have 23downloaded. Don't worry about messages telling you that libraries are 24missing: they are only needed for grid-self-checks we need for 25developing. 26 27You can customize the build to your specific needs by using an options file 28(see below) 29 30 ./dune-common/bin/dunecontrol --opts=/path_to/file.opts 31 32If you did not tell dunecontrol to install with an options file you 33need to run 34 35 ./dune-common/bin/dunecontrol make install 36 37to install Dune (you may need root-permissions for the install 38part depending on the prefix set) 39 40A more comprehensive introduction to the build system can be found in [0]. 41 42Passing options to the build process 43------------------------------------ 44 45Using the dunecontrol script the following atomic commands can be 46executed: 47 48- configure (runs the CMake configuration tests for each module) 49- exec (executes a command in each module source directory) 50- bexec (executes a command in each module build directory) 51- make (builds each module) 52- update (updates the Git or Subversion version) 53 54The composite command all simply runs configure and make for 55each module. 56 57As it is often not convenient to specify the desired options after 58the duncontroll call, one can pass the options via a file specified 59by the --opts=<file> option. Specify the options via the variable 60 61 CMAKE_FLAGS=<flags> 62 63An example of an options file is 64 65 # use a special compiler (g++ version 5.0), 66 # install to a custom directory, default is /usr/local/bin, 67 # disable the external library SuperLU, 68 # and use Ninja-build instead of make as the build-tool 69 CMAKE_FLAGS="-DCMAKE_CXX_COMPILER=g++-5 -DCMAKE_INSTALL_PREFIX='/tmp/HuHu' -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=true -GNinja" 70 71Links 72----- 73 740. https://www.dune-project.org/doc/installation 751. https://dune-project.org/releases 76