# 12.2.1. Introduction

This documentation describes about how to write, generate and manage Groonga documentation.

## 12.2.1.1. Install depended software

Groonga uses Sphinx as documentation tool.

Here are command lines to install Sphinx.

Debian GNU/Linux, Ubuntu:

    % sudo apt-get install -V -y python-sphinx

CentOS, Fedora:

    % sudo yum install -y python-pip
    % sudo pip install sphinx

OS X:

    % brew install python
    % brew install gettext
    % export PATH=`brew --prefix gettext`/bin:$PATH
    % pip install sphinx

If the version of Python on your platform is too old, you’ll need to install a newer version of Python 2.7 by your hand. For example, here are installation steps based on pyenv:

    % pyenv install 2.7.11
    % pyenv global 2.7.11
    % pip install sphinx

## 12.2.1.2. Run `configure` with `--enable-document`

Groonga disables documentation generation by default. You need to enable it explicitly by adding `--enable-document` option to `configure`:

    % ./configure --enable-document

Now, your Groonga build is documentation ready.

## 12.2.1.3. Generate HTML

You can generate HTML by the following command:

    % make -C doc html

You can find generated HTML documentation at `doc/locale/en/html/`.

## 12.2.1.4. Update

You can find sources of documentation at `doc/source/`. The sources should be written in English. See I18N about how to translate documentation.

You can update the target file when you update the existing documentation file.

You need to update file list after you add a new file, change file path and delete existing file. You can update file list by the following command:

    % make -C doc update-files

The command updates `doc/files.am`.

previous

12.2. How to contribute in documentation topics

next

12.2.2. I18N