Building documentation

After a successful compile (using make), the documentation can be built by issuing:

make doc

or, to build only the PDF documentation and not the HTML version,

make -C Documentation out=www pdf

Note: The first time you run make doc, the process can easily take a very long time with not much output on the command line.

After this initial build, make doc only makes changes to the documentation where needed, so it may only take a minute or two to test changes if the documentation is already built.

If make doc succeeds, the HTML documentation tree is available in out-www/offline-root/, and can be browsed locally. The documentation can also be inspected in the Documentation/out-www subdirectory.

make doc sends the output from most of the compilation to logfiles. If the build fails for any reason, it should print the name of a logfile, explaining what failed.

make doc compiles the documents for all languages. To save some compile time, the English language documents can be compiled on their own with:

make LANGS='en' doc

Similarly, it is possible to compile a subset of the translated documentation by specifying their language codes on the command line. For example, the French and German translations are compiled with:

make LANGS='de fr' doc

To get correct word hyphenation in the non-English PDF documentation files you should install proper TeX Live packages for your platform, for example, ‘texlive-hyphen-german’ or ‘texlive-hyphen-french’. If you have enough disk space you might simply install ‘texlive-full’ instead to get everything in one rush.

Compilation of documentation in Info format with images can be done separately by issuing:

make info

An issue when switching branches between master and translation is the appearance/disappearance of translated versions of some manuals. If you see such a warning from make:

No rule to make target 'X', needed by 'Y'

Your best bet is to delete the file Y.dep and to try again.


LilyPond Contributor’s Guide v2.25.23 (development-branch).