Building OpenFlipper

Dependencies

OpenFlipper is developed on top of the Qt framework. This framework provides easy cross platform development. Therefore an installed version of qt with at least version 4.5 is required. As the framework depends on qt we use the qt make tool qmake to build OpenFlipper.

Required libraries

Build System

The build system uses cmake to generate all makefiles. Since v1.0 RC2 it is recommended to use cmake as primary build system.

Building OpenFlipper using Cmake

For the following section CMake >= 2.6.x has to be installed. In the toplevel directory of OpenFlipper is a CMakeLists.txt file that specifies the build configuration and targets. In most cases this file should be left untouched. Additional functions and environment settings are to be found in the cmake directory in the toplevel folder. See following subsections for information on how to build OpenFlipper for your specific operating system.

Building OpenFlipper under Linux

To switch between debug and release build, use cmake -DCMAKE_BUILD_TYPE=Debug .. Change install path: -DCMAKE_INSTALL_PREFIX=[path]

The created application (binaries, libs and shared files) are to be found in the Build directory.

Building OpenFlipper under Windows

Building OpenFlipper under MacOS X

The created application bundle (that contains binaries, libs and shared files) is to be found in the Build directory.

Building OpenFlipper Plugins with CMake

Building plugins with CMake is very simple. The OpenFlipper CMake build system expects a CMakeLists.txt file in each of the plugin's directories. So when developing a plugin, just make sure there is a CMakeLists.txt in your plugin's directory. In this file include the global file plugin.cmake which specifies the openflipper_plugin() function:

include(plugin)

You then have to add the following line which configures the build parameters of your plugin:

openflipper_plugin()

Note: There are several parameters that one can pass to this function. Usage:

openflipper_plugin ( [DIRS dir1 dir2 ...]
                     [DEPS dep1 dep2 ...]
                     [OPTDEPS dep1 dep2 ...]
                     [LDFLAGSADD flag1 flag2 ...]
                     [CFLAGSADD flag1 flag2 ...]
                     [LIBRARIES lib1 lib2 ...]
                     [LIBDIRS dir1 dir2 ...]
                     [INCDIRS dir1 dir2 ...]
                     [ADDSRC file1 file2 ...]
                     [INSTALLDATA dir1 dir2 ...]
                     [TRANSLATION_LANGUAGES lang1 lang2 ...]
                     [TRANSLATION_ADDFILES file1 file2 ...]
                     [LICENSEMANAGER])

DIRS        = additional directories with source files
DEPS        = required dependencies for find_package macro
OPTDEPS     = optional dependencies for find_package macro
LDFLAGSADD  = flags added to the link command
CFLAGSADD   = flags added to the compile command
LIBRARIES   = libraries added to link command
LIBDIRS     = additional link directories
INCDIRS     = additional include directories
ADDSRC      = additional source files
INSTALLDATA = directories that will be installed into the openflipper data directory
TRANSLATION_LANGUAGES = language codes for translation
TRANSLATION_ADDFILES  = additional files that should be included into the translation files
LICENSEMANAGER = Compile plugin with license management

For a detailed description of the parameters see the CMake documentation. For an example of how to build a simple plugin see A simple plugin.


acg pic Project OpenFlipper, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .