1) Create a projects directory, unpack the HiFlow3 tarball:
$> mkdir -p /path/to/projects
$> mv HiFlow3_2.0.tar.gz /path/to/projects/
$> cd /path/to/projects
$> tar -zxf HiFlow3_2.0.tar.gz

2) Create a build directory and run cmake (using ccmake in this case):
$> mkdir -p HiFlow3_2.0/build
$> cd HiFlow3_2.0/build
$> ccmake ../

3) Set appropriate cmake options:

  • Set CMAKE_BUILD_TYPE to “Debug” or “Release”. Debug mode executes a lot of assertions in the code which are skipped in release mode. The release mode is much faster than debug mode.

  • Set CMAKE_INSTALL_PREFIX to the path where the HiFlow3 library and headers shall be installed.
  • Set the other options as appropriate.


4) Configure and generate the makefiles:

Press ‘c’ to configure, possibly repeat the configuration until all dependencies have been resolved, than press ‘g’ to generate the makefiles.

5) Compile and install:
$> make
$> [optional] make test
$> [optional] make doxygen
$> make install
CMAKE_INSTALL_PREFIX/lib should contain libhiflow.a
CMAKE_INSTALL_PREFIX/include/hiflow3 should contain the headers
[optional] CMAKE_INSTALL_PREFIX/share/hiflow3/doc should contain the documentation

6) Note on makefiles for HiFlow3 applications:
When writing makefiles for your own HiFlow3 applications, make sure to include the boost components shipped with HiFlow3. Put the following sub-directories of the HiFlow3 header directory into the include path of the makefile.