Build Types

COOLFluiD uses the CMake build system for building. We recommend the developers to use one of the following build types: Debug, Optim, Release

The capitalisation of the names does not matter. DEBUG, OPTIM, RELEASE, debug, optim, release, are accepted also.

Summary

  • Typically you want to use Optim when you are programming and testing.
  • If you have a bug, compile and run with a Debug because it will check much more stuff, helping you find your bug
  • If you want to run for a long time, compile and run in Release.

Debug

Debug builds have by default:

  • has information for debugger ( GCC -g )
  • very little optimization ( GCC -O1 )
  • assertions on
  • strong checks on all vectors ( STL and COOLFluiD )
  • Tracing output

Optim

Optim builds have by default:

  • has information for debugger ( GCC -g )
  • some optimization ( GCC -O2 )
  • assertions on
  • weaker checks on all vectors ( only COOLFluiD )
  • Tracing output

Note: this is different from the old behavior of 'Optim' (before r8791)


Release

Release builds have by default:

  • no information for debugger ( GCC -g0 )
  • strong optimization ( GCC -O3 -DNDEBUG -fomit-frame-pointer)
  • assertions off
  • no checks on any vector
  • no tracing output

Note: this is equal to the old behaviour of 'Optim' (before r8791)