Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Building BIAS, required/optional packages

This library can be built with different compiler and under different operating systems, in particular with gcc 3.3/4.1 on Linux and Microsoft Visual Studio .NET 2003 on Windows.

You need to install a recent version of cmake from CMakeLists.txt files are used as input by cmake to generate Makefiles on Linux and Visual Studio project files on Windows (or nmake files).

BIAS requires some packages to be properly installed and can use some others to extend its own functions. Optional and mandatory packages are (as in BIAS/DEPENDENCIES):

Because the build-system of BIAS is based on CMake ( you must 
have properly installed these tools:

    * cmake (newest version, at least 2.0.3, see

Most of the subdir MathAlgo is based on Blas/Lapack, so BIAS depends on:
    * lapack/blas (see below for Win32 hints)

There are some packages which have to be installed in order for BIAS
to be built and to work correctly. Currently BIAS depends on:

    * libuuid (belongs to ext2 file system tools)
    * g2c/f2c (fortran-to-c)
    * make (GNU-make prefered, other untested)
    * a compiler (gcc/g++ 4.1 prefered)

BIAS has interfaces for or supports the following packages (optional):

    * libdv
    * fftw3
    * GSL (GNU Scientific Library)    
    * ImageMagick  (e.g. ImageMagick-6.2.0-Q16)
    * OpenCV (e.g. 2.0)
    * OpenGL 
    * OpenEXR
    * Pthreads
    * wxWidgets (e.g. 2.6.3)
    * libxml2 (e.g. 2.5.10-25)
    * .. and more, see USE_* flags 

BIAS is developed in parallel on PC hardware on Linux OS with gcc (4.1)
and Windows XP with MS Visual Studio .NET 2003. 
Older Version of MSVS are not supported because of their broken template
compilation engine.

Under MS Windows there are the following dependencies:

    * lapack/blas     (found at 
                       Alternative download: 
                       You will have to download both zip-archives and to extract
                       them to a place where libs and headers are found by the
                       CMake scripts.
                       set Path variable to both .dll files and ENV variables 
                       (LAPACK_HOME and BLAS_HOME) to the directory
                       which containes lapack, blas and f2c.h (def's needed))


    * libXML2 2.5.10  (which depends on zlib and iconv. All this can be
             - 2.6.11  found at
                       For configuration with CMake, set environment variables 
                       XML2_HOME, ICONV_HOME and ZLIB_HOME.
                       For runtime set PATH to the directories
                       that containes all three DLL's or copy DLL's into
    * ImageMagick  (e.g. ImageMagick-6.2.0-Q16)
    * OpenCV (e.g beta5a)
    * wxWidgets (e.g. version 2.6.3)
    * Pthreads
    * OpenGL 
    * glut    
    * glew
    * DevIL
    * GSL
    * OpenEXR
    * Nvidia StereoI (stereo rendering API, supports Shutter glasses, anaglyph red/green and more)
    * FFTW3
    * ... and more, see USE_* options in cmake.
Feel free to contact the developers ( for multi platform
and Windows details or write to the BIAS mailing list.

WIN32 Note: BIAS is frequently tested with "multithreaded shared debug" runtime libs ("/MDd") and NOT using UNICODE. However, other configurations such as release or static (e.g. "/MT") should work, too - but these are less frequently tested.

Installation of BIAS as described in BIAS/INSTALL is as following:

INSTALL howto for the BIAS library

> get BIAS source
> get CMakeModules
> setenv CMAKE_MODULE_PATH to directory of CMakeModules
> cmake .
> make

Building BIAS with CMake

(1) Install newest cmake version (minimum 2.4.5) from 
(2) If you have a tar.gz BIAS version, all necessary CMake scripts will be 
inside that archive and you can proceed with step (3). When using the BIAS 
cvs access, you need to fetch build system scripts(2.1) and tell where 
they are(2.2):
Checkout our CMakeModules directory (same CVS settings as BIAS) containing 
additional find package macros for BIAS:
> cvs co CMakeModules
(2.2) Let environment variable CMAKE_MODULE_PATH 
point to the CMakeModules directory, e.g.
on bash:
> export CMAKE_MODULE_PATH=/home/user/CMakeModules
or on tcsh:
> setenv CMAKE_MODULE_PATH /home/user/CMakeModules

(3) checkout/install BIAS source code.

(4) configure 
run cmake to change options and to generate makefiles. 

example for an in-place build on Linux:
cd to source directory of BIAS
> cd BIAS
configure and generate makefiles:

On Linux you can either use the command line based version with:
> ccmake . (mind the 'dot')
See the bottom line for usage instructions, in particular:
- press 'c', then modify options as required and press 'c' again to configure
- finally press 'g' to generate Makefiles

Or you can use the cmake GUI cmake-gui which is more convinient. 

On Win32:
> CMakeSetup.exe 
The GUI is self-explaining.

You can also use 
 > cmake .
directly if you prefer command line instead of graphical interface.

(4.2) configure examples:
With the option BUILD_EXAMPLES at the you may switch the building of example binaries. 
> make 

(5) compile:
> make

(6) install: (optional, not required)
> make install

See ReadmeCMake.txt for further information.

The MIP group: 12/2003 - 02/2011

Feel free to write to the BIAS Mailing List for details.