Commit 0dbd989d authored by fw4splbot's avatar fw4splbot
Browse files

merge(dev): release 13.1.0

parents f35bd2b8 979d0aea
Installation/media/Directories.png

4.75 KB | W: | H:

Installation/media/Directories.png

8.93 KB | W: | H:

Installation/media/Directories.png
Installation/media/Directories.png
Installation/media/Directories.png
Installation/media/Directories.png
  • 2-up
  • Swipe
  • Onion skin
FW4SPL installation
-------------------------
FW4SPL uses CMake as build system.
We strongly recommend to build FW4SPL by separating source files, build files and install files.
So we propose the following folders layout :
- Deps/Build/Debug
- Deps/Build/Release
- Deps/Src
- Deps/Install/Debug
- Deps/Install/Release
- Dev/Build/Debug
- Dev/Build/Release
- Dev/Src
- Dev/Install/Debug
- Dev/Install/Release
Good practices in FW4SPL recommend to separate source files, build and install folders.
So to prepare the development environment:
Of course you can name the folders as you wish, or choose a different layout, but keep in mind to not build inside the source directory. This is strongly discouraged by *CMake* authors.
Here are the details, if you need some help to create this folders hierarchy :
- Create a third party folder (Deps)
.. code:: bash
$ mkdir Deps
* Create a development folder (Dev)
- Create into "Deps" the source, build and install directories
.. code:: bash
$ mkdir Deps/Src Deps/Build Deps/Install
- Create sub-folders to separate Debug and Release compilations
.. code:: bash
* Create a build folder (Dev/Build)
$ mkdir Deps/Build/Debug Deps/Build/Release Deps/Install/Debug Deps/Install/Release
* Add a sub folder for Debug and Release.
* Create a source folder (Dev/Src)
- Then create a "Dev" directory, for FW4SPL
* Create an install folder (Dev/Install)
.. code:: bash
* Add a sub folder for Debug and Release.
$ mkdir Dev
To prepare the third party environment:
- Create into "Dev" the source, build and install directories
* Create a third party folder (BinPkgs)
.. code:: bash
* Create a build folder (BinPkgs/Build)
$ mkdir Dev/Src Dev/Build Dev/Install
* Add a sub folder for Debug and Release.
* Create a source folder (BinPkgs/Src)
- Create sub-folders to separate Debug and Release compilations
* Create an install folder (BinPkgs/Install)
.. code:: bash
* Add a sub folder for Debug and Release.
$ mkdir Dev/Build/Debug Dev/Build/Release Dev/Install/Debug Dev/Install/Release
.. image:: ../media/Directories.png
Of course you can name the folders as you wish, or choose a different layout, but keep in mind to not build inside the source directory. This is strongly discouraged by *CMake* authors.
Dependencies
~~~~~~~~~~~~~~
We need first to build the third-party librairies. We will now fetch the scripts that allow to build them and then launch the compilation.
First, we need to build the third-party librairies. We will now fetch the scripts that allow to build them and then launch the compilation.
- Clone the repository into your source directory of Deps:
* `Clone <http://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository#Cloning-an-Existing-Repository>`_ the following repository in the (BinPkgs/Src) source folder:
* `fw4spl-deps <https://github.com/fw4spl-org/fw4spl-deps.git>`_
.. code:: bash
$ cd Deps/Src
$ git clone https://github.com/fw4spl-org/fw4spl-deps.git fw4spl-deps
$ cd Dev/BinPkgs/Src
$ git clone https://github.com/fw4spl-org/fw4spl-deps.git
.. note:: *Optionnal*:
.. note:: *Optional*:
You can also clone this extension repository: `fw4spl-ext-deps <https://github.com/fw4spl-org/fw4spl-ext-deps.git>`_
You'll need it if you want to add extension to fw4spl (like fw4spl-ar).
* Check if all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
* Ensure that all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
* Update the cloned repositories to the lastest stable `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_.
- Go into your Build directory (Debug or Release) : here an example if you want to compile in DEBUG
* Go into your Build directory (Debug or Release) : here is an example if you want to compile in DEBUG
.. code:: bash
$ cd ../../..
$ cd Deps/Build/Debug
$ cd Dev/BinPkgs/Build/Debug
Project configuration
+++++++++++++++++++++
Dependencies configuration
++++++++++++++++++++++++++
To build the dependencies, you must configure the project with CMake into the Build folder. As any CMake based project, there are three different ways to perform that.
.. note::
All the generation options are specify in 'Project generation'
All the generation options are specified in 'Dependencies generation'
1. Command-line
"""""""""""""""""
***************
In this case, you give all the necessary variables on the command-line in one shot :
.. code:: bash
$ cd ~/Deps/Build/Debug
$ cmake ../../Src/fw4spl-deps -DCMAKE_INSTALL_PREFIX=~/Deps/Install/Debug -DCMAKE_BUILD_TYPE=Debug
$ cd Dev/BinPkgs/Build/Debug
$ cmake ../../Src/fw4spl-deps -DCMAKE_INSTALL_PREFIX=Dev/BinPkgs/Install/Debug -DCMAKE_BUILD_TYPE=Debug
Or, if you cloned the fw4spl-ext-deps :
.. code:: bash
$ cd ~/Deps/Build/Debug
$ cmake ../../Src/fw4spl-deps -DCMAKE_INSTALL_PREFIX=~/Deps/Install/Debug -DCMAKE_BUILD_TYPE=Debug -DADDITIONAL_DEPS=~/Deps/Src/fw4spl-ext-deps
$ cd Dev/BinPkgs/Build/Debug
$ cmake ../../Src/fw4spl-deps -DCMAKE_INSTALL_PREFIX=Dev/BinPkgs/Install/Debug -DCMAKE_BUILD_TYPE=Debug -DADDITIONAL_DEPS=Dev/Src/fw4spl-ext-deps
2. NCurses based editor
"""""""""""""""""""""""""""""
***********************
This editor allows to set the required each variable in a more interactive way :
.. code:: bash
$ cd ~/Deps/Build/Debug
$ cd Dev/BinPkgs/Build/Debug
$ ccmake ../../Src/fw4spl-deps
Then change the following CMake variables:
- ``CMAKE_INSTALL_PREFIX``: set the install location, here ``~/Deps/Install/Debug``
- ``CMAKE_INSTALL_PREFIX``: set the install location, here ``Deps/BinPkgs/Install/Debug``
- ``CMAKE_BUILD_TYPE``: set the build type 'Debug' or 'Release'
- ``ADDITIONAL_DEPS``: you can leave it empty, it is only needed if you have an extra source location like fw4spl-ext-deps or a custom repository.
......@@ -132,11 +109,11 @@ Press *"c"* to configure.
.. image:: ../media/osx_cmake_binpkgs.png
3. Qt based gui
""""""""""""""""""
***************
.. code:: bash
$ cd ~/Deps/Build/Debug
$ cd ~/Dev/BinPkgs/Build/Debug
$ cmake-gui ../../Src/fw4spl-deps
Like ccmake, change the following CMake variables:
......@@ -148,24 +125,28 @@ Like ccmake, change the following CMake variables:
Click on "configure".
Project generation
++++++++++++++++++
Dependencies generation
+++++++++++++++++++++++
.. warning::
``ENABLE_PCL``, ``ENABLE_LIBSGM`` and ``ENABLE_OPENCV_CUDA`` require the `Cuda <https://developer.nvidia.com/cuda-downloads>`_ library, if you intend to use one of these, you should install it before.
Set the following options (some of the options will be needed for the optional source):
* ``ENABLED_INFINITAM``: set to ON to build infinitam.
* ``ENABLED_BUILD_ORB_SLAM2``: set to ON to build ORB Slam 2
* ``ENABLED_OGRE_DEPS``: set to ON to build ogre.
* ``ENABLED_PCL_DEPS``: set to ON to build PCL.
* ``ENABLED_REALSENSE``: set to ON to build librealsense.
* ``ENABLED_SOFA_DEPS``: set to ON to build sofa.
* ``ENABLE_EXPERIMENTAL_DEPS``: set to ON to build experimentals libraries.
* ``ENABLE_EXPERIMENTAL_DEPS``: set to ON to build experimentals libraries (You shouldn't use it).
* ``ENABLE_INFINITAM``: set to ON to build infinitam.
* ``ENABLE_LIBSGM``: set to ON to build libSGM dependencies.
* ``ENABLE_ODIL``: set to ON to build Odil dependencies.
* ``ENABLE_OGRE``: set to ON to build ogre.
* ``ENABLE_OPENCV_CONTRIB``: set to ON to build OpenCV contrib extra modules.
* ``ENABLE_OPENCV_CUDA``: set to ON to build OpenCV with CUDA support.
* ``ENABLE_OPEN_MP``: set to ON to enable OpenMP.
* ``ENABLE_BUILD_ORB_SLAM2``: set to ON to build ORB Slam 2.
* ``ENABLE_PCL``: set to ON to build PCL.
* ``ENABLE_PCL_CUDA``: set to ON to build PCL with CUDA support.
* ``ENABLE_REALSENSE``: set to ON to build librealsense.
* ``ENABLE_SOFA``: set to ON to build sofa.
Generate the code by pressing *"g"* on NCurses based editor or click on "generate" on gui.
......
......@@ -5,86 +5,90 @@
If you get compilation errors at this step, please ensure you installed all the requirements, especially those for `Qt <http://wiki.qt.io/Building_Qt_5_from_Git>`_.
Source
~~~~~~~~
~~~~~~
* `Clone <http://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository#Cloning-an-Existing-Repository>`_ the following repositories in the (Dev/Src) source folder:
* `fw4spl <https://github.com/fw4spl-org/fw4spl.git>`_
- Clone fw4spl repository into your source directory:
.. code:: bash
$ cd Dev/Src
$ git clone https://github.com/fw4spl-org/fw4spl.git fw4spl
$ git clone https://github.com/fw4spl-org/fw4spl.git
.. note::
- *Optionnal*: You can also clone these extension repositories:
- *Optional*: You can also clone these extension repositories:
- `fw4spl-ar <https://github.com/fw4spl-org/fw4spl-ar.git>`_ contains functionalities for augmented reality (video tracking for instance).
- `fw4spl-ext <https://github.com/fw4spl-org/fw4spl-ext.git>`_ contains experimental code.
- `fw4spl-ogre <https://github.com/fw4spl-org/fw4spl-ogre.git>`_ contains a 3D backend using `Ogre3D <http://www.ogre3d.org/>`_.
- Check if all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
* Ensure that all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
- Update the cloned repositories to the same `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_ as dependencies.
* Update the cloned repositories to the same `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_.
- Go into your Build directory (Debug or Release) : here an example if you want to compile in debug:
* Go into your Build directory (Debug or Release) : here is an example if you want to compile in debug:
.. code:: bash
$ cd Dev/Build/Debug
- Now you have to configure the project. You can use one of the three tools explained above.
* Open the cmake-gui.
Also, for FW4SPL, we recommend to use the `Ninja <https://ninja-build.org/>`_ generator. It builds faster, and it is much better for everyday use because it is fast as hell to check the files you need to compile. In other words, with Ninja the compilation starts instantly whereas Make spends a dozen of seconds to check what should be compiled before actually compiling something. So if you plan to develop with FW4SPL, go with Ninja. If you only want to give a single try, you can live with the standard "Unix Makefiles" generator.
Now you have to configure the project. You can use one of the three tools explained above.
Project configuration
+++++++++++++++++++++
Also, for FW4SPL, we recommend to use the `Ninja <https://ninja-build.org/>`_ generator. It builds faster, and is much better for everyday use because of how fast it is at figuring out which files need to be built. In other words, with Ninja the compilation starts instantly whereas Make spends a dozen of seconds to check what should be compiled before actually compiling something. So if you plan to develop with FW4SPL, go with Ninja. If you only want to give a single try, you can live with the standard "Unix Makefiles" generator.
To build the dependencies, you must configure the project with CMake into the Build folder. As any CMake based project, there are three different ways to perform that.
Source configuration
++++++++++++++++++++
1. NCurses based editor
"""""""""""""""""""""""""""""
***********************
To use make, here with ``ccmake`` :
.. code:: bash
$ cd Dev/Build/Debug
$ ccmake ../../Src/fw4spl
To use ninja :
.. code:: bash
$ cd Dev/Build/Debug
$ ccmake -G Ninja ../../Src/fw4spl
- Change the following cmake arguments
* Change the following cmake arguments
- ``CMAKE_INSTALL_PREFIX``: set the install location (~/Dev/Install/Debug or Release)
- ``CMAKE_BUILD_TYPE``: set to Debug or Release
- ``EXTERNAL_LIBRARIES``: set the install path of the third party libraries you compiled before.(ex : ~/Deps/Install/Debug)
- ``EXTERNAL_LIBRARIES``: set the install path of the third party libraries you compiled earlier.(ex : ~/Dev/Install/Debug)
- ``PROJECT_TO_BUILD``: set the list of the projects you want to build (ex: VRRender, Tuto01Basic ...), each project should be separated by ";"
- ``PROJECT_TO_INSTALL``: set the name of the application to install
.. image:: ../media/osx_cmake_fw4spl.png
Press *"c"* to configure and then *"g"* to generate the makefiles.
* Press *"c"* to configure and then *"g"* to generate the makefiles.
2. Qt based gui
""""""""""""""""""
***************
.. code:: bash
$ cd ~/Deps/Build/Debug
$ cd Dev/Build/Debug
$ cmake-gui ../../Src/fw4spl-deps
Like ccmake, change the following CMake variables:
* Change the following CMake variables:
- ``CMAKE_INSTALL_PREFIX``: set the install location, here ``~/Deps/Install/Debug``
- ``CMAKE_INSTALL_PREFIX``: set the install location, here ``~/Dev/Install/Debug``
- ``CMAKE_BUILD_TYPE``: set the build type 'Debug' or 'Release'
- ``ADDITIONAL_DEPS``: you can leave it empty, it is only needed if you have an extra source location like fw4spl-ext-deps or a custom repository.
Click on "configure".
* Click on "configure".
- Change the following cmake arguments
* Change the following cmake arguments
- ``CMAKE_INSTALL_PREFIX``: set the install location (~/Dev/Install/Debug or Release)
- ``CMAKE_BUILD_TYPE``: set to Debug or Release
- ``EXTERNAL_LIBRARIES``: set the install path of the third party libraries you compiled before.(ex : ~/Deps/Install/Debug)
- ``EXTERNAL_LIBRARIES``: set the install path of the third party libraries you compiled earlier.(ex : ~/Deps/Install/Debug)
- ``PROJECT_TO_BUILD``: set the list of the projects you want to build (ex: VRRender, Tuto01Basic ...), each project should be separated by ";"
- ``PROJECT_TO_INSTALL``: set the name of the application to install
......@@ -100,13 +104,14 @@ Click on "generate".
To generate the projects in release mode, change CMake argument ``CMAKE_BUILD_TYPE`` to ``Release`` **both** for fw4spl and fw4spl-deps
Build
"""""
Source Build
++++++++++++
Then, according to the generator you chose, build FW4SPL with make :
.. code:: bash
$ cd Dev/Build/Debug
# Adjust the number of cores depending of the CPU cores and the RAM available on your computer
$ make -j4
......@@ -114,6 +119,7 @@ Or with ninja:
.. code:: bash
$ cd Dev/Build/Debug
$ ninja
If you didn't specify anything in ``PROJECT_TO_BUILD`` you may also build specific targets, for instance:
......@@ -123,56 +129,19 @@ If you didn't specify anything in ``PROJECT_TO_BUILD`` you may also build specif
$ ninja Tuto01Basic VRRender
Launch an application
-------------------------
----------------------
After a successful compilation the application can be launched with the *fwlauncher* program from FW4SPL.
The profile.xml of the application in the build folder has to be passed as argument to the *fwlauncher* call in the console.
.. code:: bash
$ bin/fwlauncher Bundles/MyApplication_Version/profile.xml
> cd Dev/Build/Debug
> ./bin/fwlauncher share/MyApplication/profile.xml
Example:
.. code:: bash
$ cd /Dev/Build/Debug
$ bin/fwlauncher Bundles/VRRender_0-9/profile.xml
Extensions
----------
**FW4SPL** has two main extension repositories:
- `fw4spl-ar <https://github.com/fw4spl-org/fw4spl-ar.git>`_: extension of fw4spl repository, contains functionalities for augmented reality (video tracking for instance).
.. code:: bash
$ cd Dev/Src
$ git clone https://github.com/fw4spl-org/fw4spl-ar.git fw4spl-ar
$ cd fw4spl-ar
- `fw4spl-ogre <https://github.com/fw4spl-org/fw4spl-ogre.git>`_: another extension of fw4spl, contains a 3D backend using `Ogre3D <http://www.ogre3d.org/>`_.
.. code:: bash
$ cd Dev/Src
$ git clone https://github.com/fw4spl-org/fw4spl-ogre.git fw4spl-ogre
$ cd fw4spl-ogre
.. Note::
Update the cloned repositories to the same `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_ as dependencies.
Then you have to reconfigure your CMake project:
.. code:: bash
$ cd ../../Build/Debug
$ ccmake .
Modify `̀ ADDITIONAL_PROJECTS`̀ : set the source location of fw4spl-ar and fw4spl-ogre separated by a semi-colon.
.. code:: bash
~/Dev/Src/fw4spl-ar/;~/Dev/Src/fw4spl-ogre/
$ ./bin/fwlauncher share/VRRender_0-9/profile.xml
\ No newline at end of file
......@@ -48,13 +48,14 @@ Finally, please note that we provide Dockerfile at this `link <https://github.co
.. include:: CommonDeps.rst
Compilation
++++++++++++++
Dependencies build
++++++++++++++++++
Now you can compile the FW4SPL dependencies with make in the console, it will automaticaly download, build and install each dependency.
.. code:: bash
$ cd Dev\BinPkgs\Build\Debug
# Adjust the number of cores depending of the CPU cores and the RAM available on your computer
$ make -j4
......
......@@ -8,7 +8,7 @@ If not already installed:
1. Install `git <https://git-scm.com/>`_
2. Optionally you can install `SourceTree <https://www.sourcetreeapp.com/>`_ to manage your repositories
2. Optionally you can install `GitKraken <https://www.gitkraken.com//>`_ to manage your repositories
3. Install `Visual Studio 2015 Community <https://www.microsoft.com/en-us/download/details.aspx?id=48146>`_
Be sure to launch it at least once while being logged with your user account. Doing so will ensure that Visual Studio is correctly registered, because otherwise, the build of some dependencies may fail.
......@@ -25,12 +25,10 @@ Qt is an external library used in FW4SPL. For the successful compilation of Qt f
- http://wiki.qt.io/Building_Qt_5_from_Git
FW4SPL installation
-------------------------
-------------------
Good practice in FW4SPL recommend to separate source files, build and install folders.
Good practices in FW4SPL recommend to separate source files, build and install folders.
So to prepare the development environment:
* Create a development folder (Dev)
......@@ -61,14 +59,17 @@ To prepare the third party environment:
|directories|
Of course you can name the folders as you wish, or choose a different layout, but keep in mind to not build inside the source directory. This is strongly discouraged by *CMake* authors.
Set the environment for a x64 version.
To compile BinPkgs and sources, you must use the 'VS2015 x64 Native Tools Command Prompt'
.. |directories| image:: ../media/Directories.png
Dependencies
~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~
First, we need first to build the third-party librairies. We will now fetch the scripts that allow to build them and then launch the compilation.
* `Clone <http://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository#Cloning-an-Existing-Repository>`_ the following repository in the (BinPkgs/Src) source folder:
......@@ -76,10 +77,10 @@ Dependencies
.. code:: bash
> cd Deps/BinPkgs/Src
> cd Dev/BinPkgs/Src
> git clone https://github.com/fw4spl-org/fw4spl-deps.git
.. note:: *Optionnal*:
.. note:: *Optional*:
You can also clone this extension repository: `fw4spl-ext-deps <https://github.com/fw4spl-org/fw4spl-ext-deps.git>`_
You'll need it if you want to add extension to fw4spl (like fw4spl-ar).
......@@ -91,69 +92,91 @@ Dependencies
.. warning:: Be sure to be in the 'VS2015 x64 Native Tools Command Prompt'
.. note::
Make sure that CMake executable (cmake.exe and cmake-gui.exe)location is present in your PATH environment variable.
Make sure that CMake executable (cmake.exe and cmake-gui.exe) location is present in your PATH environment variable.
- SET PATH=%PATH%;D:\Tools\CMake\bin
- SET PATH=%PATH%;D:\\Tools\\CMake\\bin
.. note::
Make sure that JOM executable (jom.exe) location is present in your PATH environment variable.
- SET PATH=%PATH%;D:\Tools\jom
- SET PATH=%PATH%;D:\\Tools\\jom
* Go into your Build directory (Debug or Release) : here is an example if you want to compile in DEBUG
.. code:: bash
> cd Dev\BinPkgs\Build\Debug
* Call the cmake-gui by executing command : cmake-gui
* Call cmake-gui by executing command : cmake-gui
.. code:: bash
> cmake-gui
* Set the wanted Build directory (e.g. Dev\\BinPkgs\\Build\\Debug or Release)
Dependencies configuration
++++++++++++++++++++++++++
.. note::
All the generation options are specified in 'Dependencies generation'
* Set the desired Build directory (e.g. Dev\\BinPkgs\\Build\\Debug or Release)
* Set the desired Source directory (e.g. Dev\\BinPkgs\\Src\\fw4spl-deps)
* Set the wanted Source directory (e.g. Dev\\BinPkgs\\Src\\fw4spl-deps)
* Click on "configure".
* During Configure, choose the generator 'NMake Makefiles JOM'.
* Set the following arguments:
* ``CMAKE_INSTALL_PREFIX``: set the install location (e.g. Dev\\BinPkgs\\Install\\Debug).
* ``CMAKE_INSTALL_PREFIX``: set the install location (e.g. Dev\\BinPkgs\\Install\\Debug or Release).
* ``CMAKE_BUILD_TYPE``: set to Debug or Release.
* ``ADDITIONAL_DEPS``: you can leave it empty, it is only needed if you have an extra source location like fw4spl-ext-deps or a custom repository.
* Click on "configure".
Dependencies generation
+++++++++++++++++++++++
.. warning::
``ENABLED_PCL_DEPS``, ``ENABLE_LIBSGM`` and ``ENABLE_OPENCV_CUDA`` need `Cuda <https://developer.nvidia.com/cuda-downloads>`_ library before. If you install Cuda during the process, you must re-open the ‘VS2015 x64 Native Tools Command Prompt’ to update your PATH.
``ENABLE_PCL``, ``ENABLE_LIBSGM`` and ``ENABLE_OPENCV_CUDA`` require `Cuda <https://developer.nvidia.com/cuda-downloads>`_ library, if you intend to use one of these, you should install it befor and re-open the ‘VS2015 x64 Native Tools Command Prompt’ to update your PATH.
* Set the following options (some of the options will be needed for the optional source):
Set the following options (some of the options will be needed for the optional source):
* ``ENABLED_INFINITAM``: set to ON to build infinitam.
* ``ENABLED_BUILD_ORB_SLAM2``: set to ON to build ORB Slam 2
* ``ENABLED_OGRE_DEPS``: set to ON to build ogre.
* ``ENABLED_PCL_DEPS``: set to ON to build PCL.
* ``ENABLED_REALSENSE``: set to ON to build librealsense.
* ``ENABLED_SOFA_DEPS``: set to ON to build sofa.
* ``ENABLE_EXPERIMENTAL_DEPS``: set to ON to build experimentals libraries.
* ``ENABLE_EXPERIMENTAL_DEPS``: set to ON to build experimentals libraries (You shouldn't use it).
* ``ENABLE_INFINITAM``: set to ON to build infinitam.
* ``ENABLE_LIBSGM``: set to ON to build libSGM dependencies.
* ``ENABLE_ODIL``: set to ON to build Odil dependencies.
* ``ENABLE_OGRE``: set to ON to build ogre.
* ``ENABLE_OPENCV_CONTRIB``: set to ON to build OpenCV contrib extra modules.
* ``ENABLE_OPENCV_CUDA``: set to ON to build OpenCV with CUDA support.
* ``ENABLE_OPEN_MP``: set to ON to enable OpenMP.
* ``ENABLE_BUILD_ORB_SLAM2``: set to ON to build ORB Slam 2.
* ``ENABLE_PCL``: set to ON to build PCL.
* ``ENABLE_PCL_CUDA``: set to ON to build PCL with CUDA support.
* ``ENABLE_REALSENSE``: set to ON to build librealsense.
* ``ENABLE_SOFA``: set to ON to build sofa.
* Generate the code.
* click on "generate".
Dependencies build
++++++++++++++++++
* Compile the FW4SPL dependencies using jom in the console:
* go to the build directory (e.g. Dev\\BinPkgs\\Build\\Debug or Release)
* Use "jom all" to compile all the dependencies
* Use "jom name_of_target" to compile only the wanted target
* Use "jom name_of_target" to compile only the desired target
.. code:: bash
> cd Dev\BinPkgs\Build\Debug
> cd Dev\\BinPkgs\\Build\\Debug
> jom all
* All the generate library are in the install directory (e.g. Dev\BinPkgs\Install\Debug or Release)
* All the generated libraries are in the install directory (e.g. Dev/BinPkgs/Install/Debug or Release)
.. note:: To prevent any futur problemes with source generation, check if all of the library has been compiled
.. note:: To prevent any future problems with source generation, ensure that all the libraries have been compiled
Source
~~~~~~
......@@ -164,30 +187,36 @@ Source
.. code:: bash
> cd Deps/Src
> cd Dev\Src
> git clone https://github.com/fw4spl-org/fw4spl.git
.. note::
- *Optionnal*: You can also clone these extension repositories:
- *Optional*: You can also clone these extension repositories:
- `fw4spl-ar <https://github.com/fw4spl-org/fw4spl-ar.git>`_ contains functionalities for augmented reality (video tracking for instance).
- `fw4spl-ext <https://github.com/fw4spl-org/fw4spl-ext.git>`_ contains experimental code.
- `fw4spl-ogre <https://github.com/fw4spl-org/fw4spl-ogre.git>`_ contains a 3D backend using `Ogre3D <http://www.ogre3d.org/>`_.
* Check if all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
* Ensure that all the cloned repositories are on the same `branch <https://git-scm.com/docs/git-branch>`_.
* Update the cloned repositories to the same `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_.
* Go into your Build directory (Debug or Release) : here is an example if you want to compile in debug:
.. code:: bash
* Update the cloned repositories to the same `tag <https://git-scm.com/book/en/v2/Git-Basics-Tagging>`_ as dependencies.
$ cd Dev/Build/Debug
.. warning:: Be sure to be in the 'VS2015 x64 Native Tools Command Prompt'
.. note::
Make sure that CMake executable (cmake.exe and cmake-gui.exe)location is present in your PATH environment variable.
- SET PATH=%PATH%;D:\Tools\CMake\bin
- SET PATH=%PATH%;D:\\Tools\\CMake\\bin
.. note::
Make sure that Ninja executable (ninja.exe) location is present in your PATH environment variable.