Doxygen-1.9.8
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.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Download (HTTP): https://doxygen.nl/files/doxygen-1.9.8.src.tar.gz
Download MD5 sum: 5e608271e39108728b2e408a14f2991a
Download size: 7.7 MB
Estimated disk space required: 246 MB (with tests)
Estimated build time: 1.7 SBU (using parallelism=4; with tests)
Doxygen Dependencies
Required
CMake-3.27.8 and
git-2.43.0
Optional
Graphviz-9.0.0,
ghostscript-10.02.1,
libxml2-2.12.1 (required for the tests),
LLVM-17.0.1 (with clang),
(Qt-5.15.11 or qt-alternate-5.15.11) (for doxywizard),
texlive-20230313 (or install-tl-unx),
xapian-1.4.24 (for doxyindexer), and
javacc
Installation of Doxygen
Note
When untarring this package, you may see messages such as
“Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.TextEncoding'”.
These messages are harmless, and can be safely ignored.
First, fix up some python scripts:
grep -rl '^#!.*python$' | xargs sed -i '1s/python/&3/'
Install Doxygen by running the following
commands:
mkdir -v build &&
cd build &&
cmake -G "Unix Makefiles" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-Wno-dev .. &&
make
To test the results, issue: make tests.
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.9.8 -Dbuild_doc=ON .. &&
make docs
Now, as the root
user:
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.
Command Explanations
-Dbuild_wizard=ON
: Use this switch if
Qt5 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).
-Duse_libclang=ON
: Use this switch if
llvm with clang are
installed, to add support for libclang parsing.
Configuring Doxygen
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 require formulas to create PDF
documentation, then you must have texlive-20230313 installed.
If you require formulas to convert PostScript files to bitmaps, then
you must have ghostscript-10.02.1 installed.
Contents
Installed Programs:
doxygen and optionally,
doxywizard, doxyindexer and doxysearch.cgi
Installed Libraries:
None
Installed Directory:
/usr/share/doc/doxygen-1.9.8
Short Descriptions
doxygen |
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
|
doxywizard |
is a GUI front-end for configuring and
running doxygen
|
doxyindexer |
generates a search index called doxysearch.db
from one or more search data files produced by
doxygen. See, e.g.
https://javacc.github.io/javacc/
|
doxysearch.cgi |
is a CGI program to search the data indexed by
doxyindexer
|