Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 0 additions & 28 deletions 10_Getting_Started/20_Build/40_Build_Options.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,21 +103,14 @@ value is indicating, **Release** value indicates to compile in
**Debug** value makes it compile with the debugging symbol activated and
no code optimization. **RelWithDebInfo** is similar to **Release**, but keeps the symbol files for debugging.


- **SOFA\_EXTERNAL\_DIRECTORIES**: path to external directories, this can be especially useful
to build external plugins with SOFA. For more information, please read the documentation
about [Building a plugin](../../../plugins/build-a-plugin-from-sources/ "Building a plugin").


- **SOFA_BUILD\_TUTORIALS** : this options activates the build of
all tutorials located in *applications/tutorials*.


- **SOFA_BUILD\_TESTS** : this option activates unit tests for SOFA.
For more information, please go to the [Tests
page](../../../contributing-to-sofa/writing-tests/ "Writing Tests").


- **SOFA\_FLOATING\_POINT\_TYPE** : this option determines the type(s) (float, double or both)
used almost everywhere in SOFA when a floating point type is explicitly needed:
the **SReal** type. This option also defines which "versions" of each templated
Expand All @@ -127,7 +120,6 @@ scenes that contain exclusively components using template parameters
based on double (Vec3d, Rigid3d, ...). More technically, this will respectively activate or
deactivate the macro **SOFA\_WITH\_DOUBLE** and **SOFA\_WITH\_FLOAT** in the code.


- **SOFA\_DUMP\_VISITOR\_INFO** : enabling this option allows to get more debugging information at each
step of the simulations. For a more complete description and how to use
these information, please go to the [Inspect Performances
Expand All @@ -136,22 +128,12 @@ page](../../../using-sofa/performances/inspect-performances "Inspect Performance
- **SOFA_WITH_DEVTOOLS** : enabling this option activates more features for developers such as more verbose log messages.
It is enabled by default.

- **SOFA\_NO\_EXTERN\_TEMPLATE** : this option (false by default) enables the use "extern template" in the
code of SOFA. It will be always be activated for DLLs on windows. On
some platforms, it can fix RTTI issues (typeid / dynamic\_cast), and it
significantly speeds up compilation and linking on every platform. More
information here: [Shared Libraries
Mechanism](../../../programming-with-sofa/api-overview/macro-for-dll-import-export/ "Shared Libraries Mechanism").


- **SOFA\_NO\_OPENGL** : this option will remove any OpenGL-related code from SOFA. This is
especially useful for people who wants to use SOFA as a library with a
different rendering system (typically DirectX with Windows)


- **SOFA\_NO\_UPDATE\_BBOX** : this optimization flag defines the default value of the boolean data `computeBoundingBox` in the AnimationLoop, defining whether the global bounding box of the scene is computed at each time step.


- **SOFA\_OPENMP (*advanced*)** : this flag will allow to use OpenMP for specific computations in existing
code. A few components are multithreaded with openmp pragmas. Sometimes
hyperthreading gives strange results (slowing down the simulation). To
Expand All @@ -163,13 +145,3 @@ GOMP\_CPU\_AFFINITY="0-15"). The core indices can be obtained with the
"lstopo" command (sudo apt-get install hwloc) Do not forget to limit the
max number of cores with the OMP\_NUM\_THREADS environment variable
(export OMP\_NUM\_THREADS="16")


- **SOFA\_USE\_MASK** : this activates an optimization done to
run simulation involving masks (a subpart of an object). However, this features is known
as sensitive when used with constraint algorithms. Set false by default.


- **SOFA\_WITH\_EXPERIMENTAL\_FEATURES** : activates some experimental work in progress.
No guarantee on code quality or compilation is given.
However, this gives early-access to new functionalities in SOFA.