Build Fesslix from source
This page describes how to build Fesslix from source under Linux.
Table of Contents
This documentation was tested for Ubuntu 16.04 LTS. However, apart from the specific packages to install, the procedure should be quite general for most Linux distributions.
1 Prepare the system
In order to compile the source code on your system, you have to install some packages.
This step you have to do only once.
Depending on your distribution, this step might not be necessary on your system; or you may have to install different packages.
Please install the packages listed below:
Terminal (as root)
sudo aptitude install make cmake-curses-gui gcc g++ libboost-program-options-dev libboost-filesystem-dev libboost-regex-dev bzr
Ensure that your installed boost-version is not older than version 1.48.
If you intent to build FlxVi as well, please install also the packages listed in the following line:
Terminal (as root)
sudo aptitude install libncurses5-dev
1.1 ARpack
In order to use random fields within Fesslix, you have to compile it with ARpack-support
(for the solution of the matrix eigenvalue problem using Laczos methods).
To install ARpack on your system please install the following package:
Terminal (as root)
sudo aptitude install libarpack++2-dev
On systems later than Ubuntu 12.04 LTS, you have to install the compiler version g++-4.6 in order to compile Fesslix with ARpack-support.
1.2 GNU Scientific Library (GSL)
In order to use random fields within Fesslix, you have to compile it with GSL-support
(for the solution of the full matrix eigenvalue problem).
To install GSL on your system please install the following package:
Terminal (as root)
sudo aptitude install libgsl-dev
1.3 Python Interface
In order to use the Python interface within Fesslix, you have to compile it with Python-support.
To achieve this, you have to install the following package:
Terminal (as root)
sudo aptitude install python3-dev
1.4 Octave Interface
In order to use the Octave interface of Fesslix, you have to compile it with
Octave-support.
For this to work, you have to install the octave header files package:
Terminal (as root)
sudo aptitude install octave-headers
... or using Ubuntu 13.04 and later:
Terminal (as root)
sudo aptitude install liboctave-dev
2 Download and compile FlxLib
Please download the source code for FlxLib:
Terminal
bzr branch lp:fesslix/flxlib
Thereafter, please change to the top level directory of the source folder.
Configure and compile the code as described in configure, compile, install.
3 Download and compile FlxEigen
Please download the source code for FlxEigen:
Terminal
bzr branch lp:fesslix/flxeigen
Thereafter, please change to the top level directory of the source folder.
Configure and compile the code as described in configure, compile, install.
4 Download and compile Fesslix
Please download the source code for Fesslix:
Terminal
bzr branch lp:fesslix
Thereafter, please change to the top level directory of the source folder.
Configure and compile the code as described in configure, compile, install.
5 Download and compile optional libraries for Fesslix
The functionality of Fesslix can be extended by means of supplementary libraries.
In order to install such a library, proceed as follows:
1) Select the library you are interested in from the table of supplementary libraries. Get the brz-path from the last column of the table.
2) Get the soure code of that library by executing:
1) Select the library you are interested in from the table of supplementary libraries. Get the brz-path from the last column of the table.
2) Get the soure code of that library by executing:
Terminal
bzr branch lp:BZRPATH
where you have to replace BZRPATH with the respective brz-path of the selected library.
3) Thereafter, please change to the top level directory of the source folder. Configure and compile the code as described in configure, compile, install.
3) Thereafter, please change to the top level directory of the source folder. Configure and compile the code as described in configure, compile, install.