Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changes between Initial Version and Version 1 of code/Buildsystem


Ignore:
Timestamp:
Mar 3, 2009, 11:52:51 AM (15 years ago)
Author:
rgrieder
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • code/Buildsystem

    v1 v1  
     1= The Orxonox Build System =
     2We use [http://www.cmake.org CMake] to configure the the compiler. CMake can either generate makefiles or project files (Visual Studio, KDevelop, Code::Blocks, etc.). There is more information on the CMake homepage. [[br]]
     3Our '''CMake version''' requirement is '''2.6'''.
     4
     5== Prerequisites ==
     6Orxonox has of course some library dependencies which you will have to get yourself from the internet. If you are compiling on Windows however we strongly recommend to use precompiled archives, supplied on the [wiki:download] page because that will make your life a lot easier. [[br]]
     7This is a list of requirements:
     8|| Library name                     || Minimum Version ||
     9|| OGRE 3D Graphics Engine          || 1.4 (1.6 not yet supported) ||
     10|| CEGUI (Crazy Eddie's GUI System) || 0.5 ||
     11|| Boost libraries                  || 1.34 ||
     12|| ENet (Network library)           || 1.1 ||
     13|| Lua (scripting language)         || 5.0 or 5.1 ||
     14|| Tcl (shell script language)      || 8.4 or 8.5 ||
     15|| OpenAL (audio)                   || (not yet specified) ||
     16|| ALUT (audio)                     || (not yet specified) ||
     17|| LibOgg                           || (not yet specified) ||
     18|| LibVorbis                        || (not yet specified) ||
     19|| ZLib (compression)               || (not yet specified) ||
     20[[br]]
     21On Windows, you will also have to have DirectX 9.0c installed. OGRE uses a DX SDK of different version, but you will find the DLLs in the precompiled archives (MSVC and MinGW version differ as well).
     22
     23== CMake Basics ==
     24Either you get yourself a GUI version (I really recommend it if you haven't used CMake yet) or you use the command line version. [[br]]
     25Generally speaking CMake will generate all files in a single directory tree called build (or binary) tree. That means your source tree doesn't get 'polluted' in any way. We recommend to make a directory in the source tree for the output. [[br]]
     26In short for the command line version:
     27{{{
     28(sitting in your checkout directory)
     29mkdir build
     30cd build
     31cmake ..
     32}}}
     33Why ".." in the subfolder? Because that's how CMake works. It will generate the output files in the current current directory, ".." only specifies our source tree (with a CMakeLists.txt file). [[br]] [[br]]
     34
     35== Options ==
     36Specifying them can either be done in the GUI very easily (please exclude the advanced entries) or on the command line with:
     37{{{ cmake -D MYVALUE=TRUE .. }}}
     38If you wish to have more options than listed here, you will have to consult Reto or the CMake online docs.