d6f80a80e3117e6c180c85a2e120a46656082602
[dealii.wiki.git] / Getting-deal.II.md
1 # Introduction
2
3 deal.II is somewhat difficult to install especially if you are new to it and
4 if you need additional dependencies for parallel computations (p4est,
5 Trilinos, PETsc, etc.). There are various different ways to acquire deal.II and
6 its (optional) dependencies and the number of choices can be overwhelming. This document tries to help you navigating the
7 different options.
8
9 Please follow the following guidelines:
10
11 1. Are you happy with latest release of deal.II? If yes, go to the next
12    point. If you want to work on deal.II itself, you will need the latest
13    development version. Go to [Development version](https://github.com/dealii/dealii/wiki/Getting-deal.II#development-version).
14
15 2. Are you just trying things out and learning how to use deal.II? If yes, try
16    [VM](https://github.com/dealii/dealii/wiki/Getting-deal.II#vm) or if you are comfortable using docker, try [docker](https://github.com/dealii/dealii/wiki/Getting-deal.II#docker). Otherwise go to
17    the next point.
18
19 3. Is your machine running Windows? See [Windows](https://github.com/dealii/dealii/wiki/Getting-deal.II#windows). Are you running
20    MacOS? You can use the prebuilt package. See [MacOS](https://github.com/dealii/dealii/wiki/Getting-deal.II#macos).
21
22 4. Are you running Ubuntu/Debian/Arch/Gentoo/..., consider installing a [Linux
23    package](https://github.com/dealii/dealii/wiki/Getting-deal.II#linux-packages). If not, continue to the next point.
24
25 5. If you need additional dependencies (MPI, Trilinos, p4est, PETSC, ...) it
26    is easier to use a source-based installer like [candi](https://github.com/dealii/dealii/wiki/Getting-deal.II#candi) or spack. Otherwise,
27    go to the next point.
28
29 6. Get the source code to deal.II by downloading the .tar.gz file from the latest release at
30      https://github.com/dealii/dealii/releases
31    and go to [Installation from source](https://github.com/dealii/dealii/wiki/Getting-deal.II#installation-from-source).
32
33 7. None of this works or still lost? Contact us at https://www.dealii.org/mail.html
34
35 # Installation from source
36   Download a .tar.gz with the source from
37   https://github.com/dealii/dealii/releases or clone the git repository (``
38   git clone https://github.com/dealii/dealii.git``) and proceed with
39   installation as described at
40   https://www.dealii.org/current/readme.html#installation
41
42 # VM
43  Install VirtualBox on your Windows/MacOS/Linux machine and download the
44  virtual machine image from https://www.math.clemson.edu/~heister/dealvm/
45
46 # docker
47   After you install docker on your machine, you can download and run
48   precompiled docker images. See https://github.com/dealii/docker-files for
49   more information.
50
51 # Development version
52   - You can use the VM or windows WSL, but most of us run Linux (or MacOS) natively.
53   - You will need to install deal.II from source. See "Development sources" at
54     https://www.dealii.org/download.html
55   - What dependencies you need depends on what you are trying to do. You can
56     install dependencies in several different ways: manually, using the
57     Debian/Ubuntu or other packages, using candi, or using spack
58
59 # Windows:
60   Instructions: https://github.com/dealii/dealii/wiki/Windows
61
62   If you are running Windows 10, we recommend using the WSL as this allows you
63   to use the Debian/Ubuntu packages and run with MPI and other
64   dependencies. Alternatively, you can compile deal.II natively under Visual
65   Studio, but there is limited support for other dependencies (MPI, TBB,
66   PETSc, Trilinos).  
67
68   Note that WSL practically work like a Linux machine (with a few quirks such
69   as graphical user interfaces), so you can install dependencies (and deal.II)
70   from source or using candi or spack.
71
72 # MacOS
73   We provide a binary package (.dmg) as part of each of the releases, see
74   https://github.com/dealii/dealii/releases and download and install it.
75   For more details see https://github.com/dealii/dealii/wiki/MacOSX
76
77   Otherwise, the .dmg is also a convenient way to aquire common dependencies
78   and installing from source is the easy, see "Installation from source".
79
80 # Linux packages
81
82   We provide packages to several linux distributions as shown under 
83   "Linux distributions" at https://www.dealii.org/download.html
84
85   For example, if you are running Ubuntu 18.04 you can use the deal.II package using
86
87 ```
88 export REPO=ppa:ginggs/deal.ii-9.2.0-backports
89
90 apt-get update && apt-get install -y software-properties-common && add-apt-repository $REPO \
91 && apt-get update && apt-get install -y libdeal.ii-dev
92 ```
93
94 If you are running Ubuntu 20.04 you can use the deal.II package:
95
96 ```
97 export REPO=ppa:ginggs/deal.ii-9.2.0-backports
98
99 apt-get update && apt-get install -y software-properties-common && add-apt-repository $REPO \
100 && apt-get update && apt-get install -y libdeal.ii-dev
101 ```
102
103 # Candi
104   Candi is a tool maintained by the deal.II community to install deal.II and
105   many of the optional dependencies on a linux-like system from source and is
106   quite useful to run on clusters where you need typically need to install
107   packages manually.
108   See https://github.com/dealii/candi

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.