HLIBpro  1.2
Table of Contents

Binary Distribution


To use the binary distribution of 𝓗𝖫𝖨𝖡𝗉𝗋𝗈, the following libraries have to be available together with 𝓗𝖫𝖨𝖡𝗉𝗋𝗈:

See below, for instruction on how to install these using system supplied commands.

Furthermore, for the internal make system of 𝓗𝖫𝖨𝖡𝗉𝗋𝗈, you will also need

Please note, that you do not have to use SCons to include 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 into your own projects. For further instructions for such cases, please refer to Integration into own Projects.
Own programs may be added to example/SConscript. Refer to http://www.scons.org for further instructions.


Currently, 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 is available for Debian and Ubuntu. Other Linux distributions should also work, but the instructions for installing necessary libraries may differ.

To install LAPACK, Boost, zlib, FFTW3 and METIS using the standard package tools, you may run

$ aptitude install liblapack-dev libboost-all-dev zlib1g-dev libfftw3-dev libparmetis-dev

Furthermore, for the internal make system, you also have to install SCons:

$ aptitude install scons

Now, running

$ scons

within the 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 installation directory should compile all examples.

Finally, you need to add the path to the library to your environment so that you can start the example programs:

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<path_to_HLIBpro>/lib

for the bash shell or

$ setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:<path_to_HLIBpro>/lib"

for csh compatible shells.


Xcode provides libraries for LAPACK/BLAS and zlib. Only Boost and SCons (if wanted) have to be installed. You may either install it by hand following the instructions at http://www.boost.org or use available package systems for MacOSX, e.g. MacPorts or Fink.

Due to missing default installation capabilities, support for FFTW3 and METIS is not compiled into 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 on MacOSX systems.

To use the internal make system of 𝓗𝖫𝖨𝖡𝗉𝗋𝗈, please define the installation directory of Boost in case, it is not system wide available, by changing the variable boost_dir in the file SConstruct.

Afterwards, run

$ scons

within the 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 installation directory to compile all example programs.

Finally, you need to add the path to the library to your environment so that you can start the example programs:

The same has to be done for the BOOST library, e.g.
$ export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:<path_to_boost>/lib

Integration into own Projects

To ease the integration of 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 into own projects, the needed compiler flags are can be printed out by using

$ bin/hlib-config

To make it work, the installation path of 𝓗𝖫𝖨𝖡𝗉𝗋𝗈 has to be changed in the command. So, open bin/hlib-config and replace "<path_to_HLIBpro>" in the definition of prefix by the corresponding path.

Compilation options may then be printed out via

$ bin/hlib-config --cflags

and linking options via

$ bin/hlib-config --lflags

(both may also be combined).

As an example, by using hlib-config, the compilation of the example bem1d.cc may also be performed via

$ g++ -o examples/bem1d examples/bem1d.cc `bin/hlib-config --cflags --lflags`

(assuming a Unix system).

License File Management

The license file hlibpro.lic must be placed either in the directory where the final programs will be executed, e.g. in the examples/ subdirectory for the supplied examples, of in the directory pointed to by the environment variable HLIBPRO_LIC_PATH

On Unix systems that can be done via

$ export HLIBPRO_LIC_PATH=<path_to_HLIBpro.lic>

for the bash shell or

$ setenv HLIBPRO_LIC_PATH "<path_to_HLIBpro.lic>"

for csh compatible shells.

If several license keys are available, they may all be put into one license file.

Source Code Distribution