Software used by Cantera¶
This section lists the versions of third-party software that are required to build and use Cantera.
Compilers¶
You must have one of the following C++ compilers installed on your system. A Fortran compiler is required only if you plan to build the Fortran module.
-
GNU compilers (C/C++/Fortran)
Known to work with version 7.4 and 9.3. Expected to work with version >= 4.6.
-
Clang/LLVM (C/C++)
Known to work with versions 3.5 and 3.8. Expected to work with version >= 3.1.
Works with the version included with Xcode 8.2.1 and 9.4.1.
-
Intel compilers (C/C++/Fortran)
Known to work with the Intel OneAPI Compilers (version 2022.0.2).
Some earlier versions of the Intel compiler (including the 2017 version) are NOT RECOMMENDED because of a bug in the C compiler.
-
Microsoft compilers (C/C++)
Known to work with Visual Studio 2015 (MSVC 14.0), Visual Studio 2017 (MSVC 14.1), Visual Studio 2019 (MSVC 14.2) and Visual Studio 2022 (MSVC 14.3).
-
MinGW (C/C++/Fortran)
http://mingw-w64.org/doku.php (64-bit and 32-bit)
http://tdm-gcc.tdragon.net/ (64-bit and 32-bit)
Known to work with Mingw-w64 3.0, which provides GCC 4.8. Expected to work with any version that provides a supported version of GCC and includes C++11 thread support.
Other Required Software¶
-
SCons:
Cantera 2.3.0 must use SCons < 3.0.0
Cantera 2.4.0 and up must use SCons >= 3.0.0
-
Python:
Works with versions >= 3.5.
-
Boost
Known to work with version 1.54; Expected to work with versions >= 1.48
Only the "header-only" portions of Boost are required. Cantera does not currently depend on any of the compiled Boost libraries.
-
SUNDIALS
If SUNDIALS is not installed, it will be automatically downloaded and the necessary portions will be compiled and installed with Cantera.
https://computation.llnl.gov/projects/sundials/sundials-software
Known to work with versions >= 2.4.
-
To use SUNDIALS with Cantera on a Linux/Unix system, it must be compiled with the
-fPIC
flag. You can specify this flag when configuring SUNDIALS (2.4 or 2.5):configure --with-cflags=-fPIC
or SUNDIALS 2.6 or higher:
cmake -DCMAKE_C_FLAGS=-fPIC <other command-line options>
Note
If you are compiling SUNDIALS 2.5.0 on Windows using CMake, you need to edit the
CMakeLists.txt
file first and change the lines:SET(PACKAGE_STRING "SUNDIALS 2.4.0") SET(PACKAGE_VERSION "2.4.0")
to read:
SET(PACKAGE_STRING "SUNDIALS 2.5.0") SET(PACKAGE_VERSION "2.5.0")
instead, so that Cantera can correctly identify the version of SUNDIALS.
-
Eigen
If Eigen is not installed, it will be automatically downloaded and installed with Cantera.
Known to work with version 3.2.8.
-
fmt
If fmt (previously known as cppformat) is not installed, it will be automatically downloaded and the necessary portions will be compiled and installed with Cantera.
Version 3.0.1 or newer is required.
-
yaml-cpp
If yaml-cpp is not installed, it will be automatically downloaded and the necessary portions will be compiled and installed with Cantera.
Known to work with version 0.6.3. Version 0.6.0 or newer is required.
-
Google Test
If Google Test is not installed, it will be automatically downloaded and the necessary portions will be compiled as part of the Cantera build process.
Known to work with version 1.7.0.
Optional Programs¶
-
Required to build the Cantera Python module, and to run significant portions of the test suite.
Expected to work with versions >= 1.12.0. 1.14.0 or newer is recommended.
-
Required version >=0.23 to build the Python module.
-
Required to convert input files from Chemkin, CTI, and XML to the YAML format
Known to work with versions 0.15.42, 0.15.87, and 0.16.5
Expected to work with versions >= 0.15.0
-
Matlab
Required to build the Cantera Matlab toolbox.
Known to work with 2009a and 2014b. Expected to work with versions >= 2009a.
-
Windows Installer XML (WiX) toolset
Required to build MSI installers on Windows.
Known to work with versions 3.5 and 3.8.
-
Pip (Python)
Provides the
pip
command which can be used to install most of the other Python modules.
-
Packages required for building Sphinx documentation
-
Required for building the C++ API Documentation
Version 1.8 or newer is recommended.
-
Required to build the dependency graph images in the C++ API Documentation
Known to work with version 2.40.1, expected to work with versions >=2.40.1