candi (Compile & Install)
candi.sh shell script downloads, configures, builds, and installs deal.II
with common dependencies on linux-based systems.
The following commands download the current version of the installer and then install the latest deal.II release and common dependencies:
git clone https://github.com/dealii/candi cd candi ./candi.sh
Follow the instructions on the screen (you can abort the process by pressing < CTRL > + C)
Install deal.II on RHEL 7, CentOS 7 or Fedora 23,24,25:
module load mpi/openmpi-`uname -i` export CC=mpicc; export CXX=mpicxx; export FC=mpif90; export FF=mpif77 ./candi.sh
Install deal.II on ubuntu 12.04, 14.xx, 15.xx, 16.xx:
export CC=mpicc; export CXX=mpicxx; export FC=mpif90; export FF=mpif77 ./candi.sh
Install deal.II on a generic Linux system or cluster:
export CC=mpicc, export CXX=mpicxx; export FC=mpif90; export FF=mpif77 ./candi.sh --platform=./deal.II-toolchain/platforms/supported/linux_cluster.platform
Note that you probably also want to change the prefix path, or
the path to
LAPACK in the configuration file
(see documentation below).
Command line options
You can get a list of all command line options by running
You can combine the command line options given below.
Multiple build processes:
./candi.sh -j <N>
- Example: to use 2 build processes type
./candi.sh -j 2.
- Be careful with this option! You need to have enough system memory (e.g. at least 8GB for 2 or more processes).
Configuration file options
If you want to change the set of packages to be installed,
you can enable or disable a package in the configuration file
This file is a simple text file and can be changed with any text editor.
Currently, we provide the packages
- petsc, slepc
- superlu_dist (to be used with trilinos)
There are several other options within the configuration file, e.g.
DOWNLOAD_PATHfolder (can be safely removed after installation),
UNPACK_PATHfolder of the downloaded packages (can be safely removed after installation),
BUILD_PATHfolder (can be safely removed after installation),
Single package installation mode
If you prefer to install only a single package, you can do so by
for instance, or a set of packages by
./candi.sh --packages="opencascade petsc"
Our installer provides a software developer mode by setting
More precisely, the developer mode skips the package
everything else (package configuration, building and installation) is done
Note that you need to have a previous run of candi and
you must not remove the
Then you can modify source files in
UNPACK_PATH of a package and
run candi again.