Skip to content
schwoere edited this page Feb 13, 2014 · 9 revisions

buildenvironment

Clone this repository if you want to build Ubitrack from the source code.

All other repositories are added as submodules to this repository

How to build Ubitrack

###1. Components of Ubitrack as submodules

There are several components represented by repositories which can be added as submodules to ubitrack. These components have to be placed in the <ubitrack>/modules folder. Usually you will need utcore, utvision, utdataflow, utfacade, utcomponents and utvisioncomponents:

Component Description Repository
utvisualization contains a standalone 3D rendering module. Mostly for quick visualizations and debugging https://github.com/Ubitrack/utvisualization.git
utvisioncomponents contains algorithms working on (mostly) camera images. https://github.com/Ubitrack/utvisioncomponents.git
utfacade contains frontend adapters for ubitrack dataflow networks. Also contains the utConsole. https://github.com/Ubitrack/utfacade.git
utdataflow contains the dataflow network and related graph methods. https://github.com/Ubitrack/utdataflow.git
utcore contains fundamental datastructures and algorithms. Needed by all other modules. https://github.com/Ubitrack/utcore.git
utcomponents contains basic dataflow modules. These cover most common tracking and registration cases. https://github.com/Ubitrack/utvisioncomponents.git
directshow contains MS Windows specific directshow framegrabber https://github.com/Ubitrack/directshow.git
buildenvironment contains general build scripts https://github.com/Ubitrack/utvisualization.git
You can pick the submodules manually or alternatively add all existing components at once by executing a script.

###2. Required tools

In order to build ubitrack the following tools have to be installed:

  • Git

  • C++ Compiler like gcc or MSVC

  • Python (at least Version 2.7, e.g. PythonXY )

  • Scons

  • cmake (only required for building OpenCV for Android)

You can compile Ubitrack for Windows, Linux and Android on the appropriate system. However, the cross-compilation for Android is only possible on Linux. If there are any differences to the compilation for Linux, they are explained in the appropriate section.

###3. Required libraries

Ubitrack is based on the following libraries:

Mandatory

Optional

These libraries have to be downloaded and configured. In order to do that, there exist three possible ways, the first one described in 4.1 offers ready-to-use download packages and uses the Ubitrack library finder. The Ubitrack library finder needs all the libraries in one specific folder. 4.2 configures the libraries by the command line and in 4.3 each possible configuration and path is manually set by editing a textfile.

####3.1 Ubitrack library finder

Ubitrack is able to find libraries which have a specific folder structure that looks like this:

<LibrariesDirectory>/[linux|windows|android]_[x64|x86]/LibraryName/[bin|include|lib|lib_debug]. 

An example for windows would be:

external_libraries\windows_x64\boost
external_libraries\windows_x64\boost\include
external_libraries\windows_x64\boost\lib
external_libraries\windows_x64\boost\lib_debug

Ubitrack Compilation for Windows

Ubitrack Compilation for Linux on Linux

Ubitrack Compilation for Android on Linux

Clone this wiki locally