The required tools to build OVITO from source are:
| Tool/Package | Requirement | Notes |
|---|---|---|
| C++ compiler | required | Compiler must support the C++11 standard (e.g. GNU g++ 4.8 or newer) |
| CMake | required | The build system used by OVITO (CMake 2.8.12 or newer required) |
| Git | required | The distributed version control system needed to retrieve OVITO's source code |
| xsltproc | optional | The XSLT processor for generating the user manual |
| DocBook | optional | The XSL stylesheets required to generate the user manual in HTML format |
| Doxygen | optional | Generates the C++ API documentation from OVITO's source code |
| Python | optional | Required by OVITO's Python script engine (PyScript plugin). Python 2.x and 3.x are supported. |
| NumPy | optional | Required by OVITO's Python script engine (PyScript plugin). |
| PyQt5 | optional | Required by OVITO's Python script engine (PyScript plugin). |
| Sphinx | optional | Tool for creating the Python scripting interface documentation |
The library dependencies are:
| Library | Requirement | Notes |
|---|---|---|
| Qt5 | required | Used for OVITO's graphical user interface (version 5.4 or newer) |
| zlib | required | Required for reading and writing compressed files. |
| Boost | required | OVITO uses some utility classes from this C++ library. |
| pybind11 | included | Required by OVITO's Python script engine (PyScript plugin). |
| Libav | optional | Audio and video processing libraries used by OVITO to write movie files. |
| libnetcdf | optional | Required by the NetCDF plugin to read NetCDF files |
| FFTW | optional | Required to build the Correlation Function plugin. |
| QScintilla2 | optional | Text editing widget required by the PyScript plugin. |
| muparser | included | A math expression parser library. OVITO's source distribution contains a copy of this library, which will be used if not found on the system. |
| Qwt | included | For plotting and data visualization. |
| Botan | included | A crypto library used by OVITO's built-in SSH client. OVITO's source distribution contains a copy of this library, which will be used if not found on the system. |
| QtCreator SSH library | included | Required for the built-in SSH client. OVITO's source distribution contains a slightly modified copy of this library, which is automatically used. |
| Tachyon | included | Required to build the Tachyon renderer plugin. OVITO's source distribution contains a slightly modified copy of this library, which is automatically used. |
| Voro++ | included | Voronoi cell construction routine required by the Voronoi analysis modifier. OVITO's source distribution contains a copy of this library, which will be used if not found on the system. |