Introduction to Doxygen
The Doxygen package contains a
documentation system for C++, C, Java, Objective-C, Corba IDL and
to some extent PHP, C# and D. It is useful for generating HTML
documentation and/or an off-line reference manual from a set of
documented source files. There is also support for generating
output in RTF, PostScript, hyperlinked PDF, compressed HTML, and
Unix man pages. The documentation is extracted directly from the
sources, which makes it much easier to keep the documentation
consistent with the source code.
You can also configure Doxygen to
extract the code structure from undocumented source files. This is
very useful to quickly find your way in large source distributions.
Used along with Graphviz, you can
also visualize the relations between the various elements by means
of include dependency graphs, inheritance diagrams, and
collaboration diagrams, which are all generated automatically.
This package is known to build and work properly using an LFS-7.10
libxml2-2.9.4 (required for the tests),
(with clang), Python-2.7.12 or Python-3.5.2, Qt-5.7.0 (for
doxywizard), texlive-20160523b (or install-tl-unx), and xapian-1.4.1 (for
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/doxygen
Installation of Doxygen
Install Doxygen by running the
mkdir -v build &&
cd build &&
cmake -G "Unix Makefiles" \
To test the results, issue: make
tests. One test, "test the \cite command", is known
If you wish to generate the package documentation, you must have
Python, TeX Live (for HTML docs) and Ghostscript (for PDF docs) installed, then
issue the following command:
cmake -DDOC_INSTALL_DIR=share/doc/doxygen-1.8.12 -Dbuild_doc=ON .. &&
Now, as the
make install &&
install -vm644 ../doc/*.1 /usr/share/man/man1
If you have generated the package documentation, then the man pages
are automatically installed, and you do not need to run the last
install ... command.
-Dbuild_wizard=ON: Use this switch if
Qt4 is installed and you wish to
build the GUI front-end.
-Dbuild_search=ON: Use this switch if
xapian is installed and you wish
to build external search tools (doxysearch.cgi and doxyindexer).
-Dforce_qt4=ON: Use this switch to
build doxywizard with
Qt4 even if Qt5 is installed.
-Duse_libclang=ON: Use this switch if
llvm with clang are installed, to add support for
There is no real configuration necessary for the Doxygen package although three additional
packages are required if you wish to use extended capabilities. If
you need to use the language translation features, you must have
Python-2.7.12 installed. If you require
formulas to create PDF documentation, then you must have texlive-20160523b installed. If you
require formulas to convert PostScript files to bitmaps, then you
must have ghostscript-9.20 installed.
doxygen and optionally, doxywizard,
doxyindexer and doxysearch.cgi
is a command-line based utility used to generate template
configuration files and then generate documentation from
these templates. Use doxygen --help for an
explanation of the command-line parameters.
is a GUI front-end for configuring and running
generates a search index called
doxysearch.db from one or more search
data files produced by doxygen. See, e.g.
is a CGI program to search the data indexed by
Last updated on 2016-09-10 17:08:40 -0500