Build documentation

The main documentation and Python documentation is written in reStructuredText and generated by sphinx. The C++ API documentation is generated by Doxygen.

Documentation can be built on Ubuntu or macOS. Building documentation on Windows may also be possible but it is not officially tested.

If you’re building documentation on a computer without a display, please use Headless rendering, otherwise the Jupyter tutorials will fail to execute.

Prerequisites

1. Install system dependencies

Ubuntu

sudo apt-get -y install doxygen texlive texlive-latex-extra ghostscript pandoc

macOS

First, install a TeX distribution such as MacTeX.

brew install ghostscript pandoc doxygen

2. Install Python dependencies

# Install deps
pip install -U sphinx==3.5.4 sphinx-rtd-theme==0.5.1 nbsphinx==0.8.3 matplotlib==3.3.3 jinja2==2.11.3

# Patched m2r: https://github.com/sphinx-doc/sphinx/issues/7420#issuecomment-657160798
pip install -U m2r2==0.2.7

Build

First, clone and build Open3D from source and install the Open3D Python package. Visit Build from source for details.

cd docs

# Run `python make_docs.py --help` to usage of the flags.
python make_docs.py --clean_notebooks --execute_notebooks=auto --sphinx --doxygen

The docs html will be saved in docs/_out folder.