-candi
+candi (Compile & Install)
=====
-candi - (Compile & Install) - Downloads, configures, builds and install various FEM libraries, e.g. deal.II, FEniCS
+* Downloads, configures, builds and install various FEM libraries, e.g. deal.II, FEniCS
+* Set up your own projects to get tools or toolchains compiled easily
General
----
* candi is a bash script based installer tool.
+* candi is preconfigured to install a working deal.II toolchain on tested platforms
* Open a Terminal.
-* Commands are further denoted with the prefix "$>"
+* Commands for your terminal are further denoted with the prefix "$>"
* Do NOT copy the prefix "$>" into your terminal!
Download
```
This downloads the current version of candi.
-Usage
+Usage (for installing deal.II)
----
### First Run
```bash
$> cd candi
```
-Note: candi is initially configured to compile and install the current version of the deal.II library.
+Note: candi is preconfigured to compile and install the current version of the deal.II library.
You run the installer by
```bash
* INSTALL the needed packages from your distribution. (You need super user rights for this step.)
* SET UP the intended compilers; cf. the following instructions for this step.
-#### Install deal.II on RHEL 7, CentOS 7 or Fedora 20/21:
+#### Install deal.II on RHEL 7, CentOS 7 or Fedora 21/22:
```bash
$> module load mpi/openmpi-`uname -i`
$> export CC=mpicc; export CXX=mpicxx; export FC=mpif90; export FF=mpif77
### Command line options (CLO) for `./candi.sh [CLO]`
-You can combine the command line options given below.
-Read carefully the output of `./candi.sh` before running!
+* You can combine the command line options given below.
+* Read carefully the output of `./candi.sh` before running!
-#### CLO: Prefix installation path: `[-p=<PATH>]`, `[--prefix=<PATH>]`
+#### CLO: Prefix path: `[-p=<PATH>]`, `[--prefix=<PATH>]`
```bash
$> ./candi.sh --prefix=Your/Prefix/Path
```
-#### CLO: Using multiple build processes `[-j<N>]`, `[--PROCS=<N>]`
+#### CLO: Multiple build processes: `[-j<N>]`, `[--PROCS=<N>]`
```bash
$> ./candi.sh -j<N>
```
+
* Remark: there is no whitespace character allowed between `-j` and the number `<N>`.
-* Example: using 2 build processes `./candi.sh -j2` or `./candi.sh --PROCS=2`.
+* Example: using 2 build processes type `./candi.sh -j2` or `./candi.sh --PROCS=2`.
* Be careful with that! You need to have enough system memory (e.g. at least 8GB for using 2 or more processes).
### Configuration file options (CFO)
```bash
$> gedit candi.cfg
```
+
You can adapt several things to your personal needs here
* the `DOWNLOAD_PATH` folder (can be safely removed after installation),
* the `UNPACK_PATH` folder of the downloaded packages (can be safely removed after installation),
and they cannot be overwritten by command line options anymore.
-Switching candi to other Projects (e.g. FEniCS)
+Switching candi to other projects (e.g. FEniCS)
----
You can switch the current project to handle to your needs.