Building 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

# For pip
pip install "sphinx>=3.0" sphinx-autobuild nbsphinx Pillow

# Or, for Conda
conda install "sphinx>=3.0" sphinx-autobuild nbsphinx Pillow

Install the patched m2r package for converting .md to .rst.

# https://github.com/sphinx-doc/sphinx/issues/7420
pip install -U -q git+https://github.com/intel-isl/m2r@dev#egg=m2r

Build

First, clone and build Open3D from source and install the Open3D Python package. Visit Compiling 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.