Installation Guides

Installing Chrono (C++)

Additional Chrono functionality is provided through optional modules, enabled during CMake configuration.

Providing 3rd-party dependencies

The core Chrono module (and hence all of Chrono) required the Eigen3 linear algebra (headers-only) library.

Chrono optional modules often rely on third-party libraries that might require additional installation steps, as described in each module installation page.

For some of these dependencies, we provide utility scripts that will download, configure, build, and install versions that are known to work with the current Chrono distribution. In each case, we provide both batch scripts (for Windows users) and bash scripts (for Linux/Mac users). Currently, utility scripts for the following dependencies are available (under the contrib/build-scripts subdirectory of the Chrono source tree, organized by OS):

  • Eigen3, required for the core Chrono module
  • Blaze, required for the Chrono::Multicore module
  • Spectra, required for the Chrono::Modal module
  • VSG libraries, required for the Chrono::VSG module
  • URDF libraries, required for the URDF parser in the Chrono::Parsers module
  • GL utility libraries, required (optionally) for the Chrono::Sensor module
  • MUMPS library, required for the optional direct sparse linear solver Chrono::Mumps module.
  • OpenCRG library, required for the optional OpenCRG support in the Chrono::Vehicle module

The subdirectories in contrib/build-scripts also include sample scripts (buildChrono.bat, buildChrono.sh, and buildChronoMac.sh) for configuring Chrono with CMake which can be used as examples of satisfying the dependencies for the various optional Chrono modules (assuming these dependencies were installed with the utility scripts described above).

Building a project that uses Chrono

Building Chrono for WebAssembly

Installing PyChrono

Chrono::Solidworks add-in

An add-in to simulate Solidworks models using the Chrono library

Building a Docker Image with Chrono