building.docu 5.52 KB
Newer Older
Mike Kremer's avatar
Mike Kremer committed
1
/*! \page buildingOpenFlipper Building OpenFlipper
Mike Kremer's avatar
Mike Kremer committed
2
 *
Mike Kremer's avatar
Mike Kremer committed
3 4 5 6 7 8 9 10 11 12 13
 * \section dependencies 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.
 *
 * \section reqlibs Required libraries
 * <ul>
 * <li> Qt >= 4.5 ( http://www.qtsoftware.com/downloads )</li>
 * <li> OpenGL    ( http://www.opengl.org )</li>
14 15
 * <li> GLUT        ( http://www.opengl.org/resources/libraries/glut/ )</li>
 * <li> GLEW       ( http://glew.sourceforge.net )</li>
Mike Kremer's avatar
Mike Kremer committed
16 17 18
 * <li> freetype2 ( optional http://www.freetype.org/freetype2/index.html )</li>
 * <li> ftgl           ( optional http://sourceforge.net/projects/ftgl/)</li>
 * </ul> 
Mike Kremer's avatar
Mike Kremer committed
19 20
 *
 * \section bs Build System
21
 * The build system uses cmake to generate all makefiles.
Mike Kremer's avatar
Mike Kremer committed
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
 * Since v1.0 RC2 it is recommended to use cmake as primary build system.
 *
 * \section build_cmake 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.
 *
 * \subsection cmake_blinux Building OpenFlipper under Linux
 *
 * <ul>
 * <li> First install the required libraries (see above)<br />
 * <li> Extract the source code or get it via svn:<br />
 * <code><b> svn co http://www-i8.informatik.rwth-aachen.de/svnrepo/OpenFlipper/branches/Free OpenFlipper</b></code></li>
 * <li> Create a build directory (e.g. <b>build</b>) in the toplevel directory: <code><b>mkdir build</b></code></li>
 * <li> Change to the newly created directory <code><b>cd build</b></code> and type <code><b>cmake ..</b></code></li>
 * <li> Now call  <b>make</b> to build OpenFlipper </li>
 * </ul>
 *
Jan Möbius's avatar
Jan Möbius committed
45 46 47
 * To switch between debug and release build, use <b>cmake -DCMAKE_BUILD_TYPE=Debug ..</b>
 * Change install path: -DCMAKE_INSTALL_PREFIX=[path] 
 *
Mike Kremer's avatar
Mike Kremer committed
48 49 50 51 52 53
 * The created application (binaries, libs and shared files) are to be found in the <b>Build</b>
 * directory.
 *
 * \subsection cmake_bwin Building OpenFlipper under Windows
 *
 * <ul>
Mike Kremer's avatar
Mike Kremer committed
54
 * <li> Get Visual Studio >= 2008 </li>
Mike Kremer's avatar
Mike Kremer committed
55 56 57
 * <li> Get and Install Qt ( >= 4.5 ) </li>
 * <li> Set the QTDIR Variable to your Qt Installation directory </li>
 * <li> Extract OpenFlipper source code. </li>
58 59
 * <li> Get all required libraries and install them ( including headers! ). Note for some glut packages:
 * Make sure the glut.h header file is in a "GL" subdirectory. CMake won't compile OpenFlipper otherwise. </li>
Jan Möbius's avatar
Jan Möbius committed
60
 * <li> Get cmake for windows from http://www.cmake.org/cmake/resources/software.html <li>
61 62 63 64 65 66
 * <li> Start the cmake gui and select the OpenFlipper toplevel directory as source directory </li>
 * <li> Choose a build directory (e.g. create a directory called \c build in OpenFlipper's root dir)</li>
 * <li> Click on configure and chose a generator for Visual Studio (according to your Visual Studio version)....
 * If the configuration fails because of libraries and/or headers which have not been found,
 * you can adjust the path in cmake-gui manually.  Note that some build variables are only visible in Advanced Mode.
 * You can change view modes of cmake-gui via the select box on the top. Rerun configure until everything is configured correctly </li>
Jan Möbius's avatar
Jan Möbius committed
67
 * <li> Click generate to create the visual studio project files </li>
68 69
 * <li> You can now find a Visual Studio solution file (OpenFlipper.sln) in the <b>build</b> directory you chose in cmake </li>
 * <li> Now you can build OpenFlipper from within Visual Studio using the newly created project file by starting Build Solution. </li>
Mike Kremer's avatar
Mike Kremer committed
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
 * </ul> 
 *
 * \subsection cmake_bmacos Building OpenFlipper under MacOS X
 *
  * <ul>
 * <li> First install the required libraries (see above)<br />
 * <li> Extract the source code or get it via svn:<br />
 * <code><b> svn co http://www-i8.informatik.rwth-aachen.de/svnrepo/OpenFlipper/branches/Free OpenFlipper</b></code></li>
 * <li> Create a build directory (e.g. <b>build</b>) in the toplevel directory: <code><b>mkdir build</b></code></li>
 * <li> Change to the newly created directory <code><b>cd build</b></code> and type <code><b>cmake ..</b></code></li>
 * <li> Now call  <b>make</b> to build OpenFlipper </li>
 * </ul>
 *
 * The created application bundle (that contains binaries, libs and shared files) is to be found in the <b>Build</b>
 * directory.
 *
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
 * \section cmake_plugin 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:
 *
 * <code>include(plugin)</code>
 *
 * You then have to add the following line which configures the build parameters
 * of your plugin:
 *
 * <code>openflipper_plugin()</code>
 *
 * Note: There are several parameters that one can pass to this function.
 * Usage:
 *
 * \include example/cmake_plugin_usage.txt
 *
 * For a detailed description of the parameters see the CMake documentation.
 * For an example of how to build a simple plugin see \ref ex1.
 *
Mike Kremer's avatar
Mike Kremer committed
109
 */