Building the The C++ Runtime Library Documentation
The The GNU C++ Library Documentation consists of the Manual, the FAQ, and the API and Source Documentation.
At the moment building the Libstdc++ documents is not as easy as the other GCC documents because the doc targets are not found in the top build directory's make file and the tools used are (1) not always available on the user's system or (2) they are not configured the way the gcc developers' systems are.
Both html, pdf, and info output formats are generated from the same xml sources in DocBook 5 format. The sources are found in the gcc source tree in subdirectory libstdc++-v3/doc/xml.
Html and Pdf Formats
Tools required for the current system of html and pdf document generation are:
The latest DocBook dtd. This is needed for the pdf generation.
The latest DocBook 5 style sheets. These ere needed for html generation. Note that a complete set of style sheets for a particular version consists of three archive files, e.g.,
non-namespace version; not needed for the current build system
namespace version; used for dblatex html generation
DocBook 5 documentation
The dblatex program (version 0.3 or later). Installation instructions there include important environment settings for manual installation to allow dblatex to find the desired DocBook dtd. Note that dblatex has its own prerequisites.
The xsltproc xslt processor.
The doxygen program (version 1.6.1 or later).
The docbook2x program.
To build the html and pdf Manual, after the libstdc++ build is complete, go to the <TARGET>/libstdc++-v3/doc subdirectory of the build directory and use the Makefile there to execute the appropriate targets.
For pdf execute:
- $ make doc-pdf-docbook
For html, you must first ensure the Makefile variable XSL_STYLE_DIR points to the directory which contains the DocBook namespace-version style sheets you want to use (this is a manual step until the build system has been fully automated). Then execute:
- $ make doc-html-docbook
To build the API and Source Documentation execute:
$ make doc-html-doxygen
$ make doc-latex-doxygen
$ make doc-pdf-doxygen # requires doc-latex-doxygen to be completed first
There are other documentation targets you can see in the Makefile which will generate various combinations of formats with one command but, until you ensure your doc build system is working for each, these are not recommended:
generates Manual and API html docs
generates API man pages
There are also install targets corresponding to most of the documentation build targets. Some of them are:
GNU Info Format
If you get errors during the build, then you may not have the prerequisites properly installed. Consult the gcc help mailing list if you can't solve the problem.